Code Submission Evaluation System Login

HIIT Open 2016

Start:2016-05-28 11:00:00
End:2016-05-28 16:00:00
 

Tasks | Messages | Scoreboard | Statistics


CSES - HIIT Open 2016 - Results
History
2016-05-28 14:02:14
Task:Interesting number
Sender:LTR
Submission time:2016-05-28 14:02:14
Language:C++
Status:READY
Result:ACCEPTED

Test results

testverdicttime (s)
#1ACCEPTED0.05 / 1.00details
#2ACCEPTED0.08 / 1.00details

Code

#include <iostream>
#include <vector>
#include <cstdio>
#include <string>
#include <algorithm>

bool isprime(int x)
{
	for (int i = 2; i < x; ++i) {
		if ((x % i) == 0) return false;
	}
	return true;
}

bool ispalindrome(int x)
{
	std::string s = std::to_string(x);
	for (int i = 0; i < int(s.size()) / 2; ++i) {
		if (s[i] != s[s.size() - i - 1]) return false;
	}
	return true;
}

int main()
{
	std::vector<int> S;
	for (int i = 2; i < 1000; ++i) {
		if (isprime(i) && ispalindrome(i)) 
			S.push_back(i);
	}

	int t;
	std::cin >> t;
	for (int ti = 0; ti < t; ++ti) {
		int n;
		std::cin >> n;
		std::vector<int> vals;
		for (int ni = 0; ni < n; ++ni) {
			int x;
			std::cin >> x;
			vals.push_back(x);
		}
		for (int x : vals) {
			if (std::binary_search(S.begin(), S.end(), x)) {
				std::cout << x << std::endl;
				break;
			}
		}
	}
}

Test details

Test 1

Verdict: ACCEPTED

input
1000
9
300 988 956 931 116 3 386 202 ...
8
786 850 344 607 258 3 564 795
7
181 300 325 705 512 972 207
6
919 257 176 534 398 536
9
324 811 467 265 688 191 642 17...
5
7 691 423 512 506
5
705 191 300 735 966
10
134 709 407 211 518 815 444 11...
9
794 476 394 244 671 181 466 92...
6
...
view   save

correct output
3
3
181
919
191
7
191
353
181
929
787
727
7
373
313
2
353
383
787
919
...
view   save

user output
3
3
181
919
191
7
191
353
181
929
787
727
7
373
313
2
353
383
787
919
...
view   save

Test 2

Verdict: ACCEPTED

input
1
100000
72 247 605 249 10 422 594 490 ...
view   save

correct output
191
view   save

user output
191
view   save