CSES - HIIT Open 2018 - Results
Submission details
Task:Alien Invasion
Sender:KnowYourArchitecture
Submission time:2018-05-26 11:16:14
Language:C++
Status:READY
Result:ACCEPTED
Test results
testverdicttime
#1ACCEPTED0.01 sdetails
#2ACCEPTED0.01 sdetails
#3ACCEPTED0.02 sdetails
#4ACCEPTED0.01 sdetails
#5ACCEPTED0.01 sdetails
#6ACCEPTED0.01 sdetails
#7ACCEPTED0.01 sdetails
#8ACCEPTED0.01 sdetails
#9ACCEPTED0.01 sdetails
#10ACCEPTED0.01 sdetails
#11ACCEPTED0.02 sdetails
#12ACCEPTED0.01 sdetails
#13ACCEPTED0.01 sdetails
#14ACCEPTED0.01 sdetails
#15ACCEPTED0.02 sdetails
#16ACCEPTED0.01 sdetails
#17ACCEPTED0.02 sdetails
#18ACCEPTED0.01 sdetails
#19ACCEPTED0.01 sdetails
#20ACCEPTED0.01 sdetails
#21ACCEPTED0.01 sdetails
#22ACCEPTED0.01 sdetails

Code

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
typedef __int128 lll;
/*
lll powmod(lll a, lll p, lll mod) {
	if(p==0) return 1;
		if(p%2==0) {
			a=powmod(a,p/2,mod);
			return (a*a)%mod;
		}
	}
	return (a*powmod(a,p-1,mod))%mod);
}

void step(ll&x, ll n, ll c){x=(lll)((lll)x*(lll)x+(lll)c)%n;}
void rFactor(ll n, map<ll, ll>& r) {
	while(n%2==0) {
		n/=2;r[2]++;
	}
	if(n==1) return;
	if(isPrime(n))r[n]++;
	else {
		while(1){
			ll x=rand()%n;ll y=x;
			ll c=rand()%n;
			for(ll i=0;i*i<=n;i++){
				step(x,n,c);step(x,n,c);step(y,n,c);
				ll g=__gcd(max(x,y)-min(x,y),n);
				if(g==n)break;
				else if(g>1) {
					rFactor(n/g, r);
					rFactor(g,r);
					return;
				}
			}
		}
	}
}

map<ll,ll> factor(ll n){
	map<ll,ll> ret;
	if(n>1) rFactor(n,ret);
	return ret;
}
*/
bool test(ll a) {
	ll b = (ll)sqrt(a) - 10000;
	if (b<0) b = 0;
	ll c = b + 20000;
	for (ll i = b; i < c; i++) {
		if (i * i == a) return true;
	}
	return false;
}
int main(){
	ll a;
	cin>>a;
	if (!test(a)) {
		cout << "even\n";
	} else {
		cout << "odd\n";
	}
}

Test details

Test 1

Verdict: ACCEPTED

input
1

correct output
odd

user output
odd

Test 2

Verdict: ACCEPTED

input
2

correct output
even

user output
even

Test 3

Verdict: ACCEPTED

input
3

correct output
even

user output
even

Test 4

Verdict: ACCEPTED

input
4

correct output
odd

user output
odd

Test 5

Verdict: ACCEPTED

input
5

correct output
even

user output
even

Test 6

Verdict: ACCEPTED

input
6

correct output
even

user output
even

Test 7

Verdict: ACCEPTED

input
7

correct output
even

user output
even

Test 8

Verdict: ACCEPTED

input
8

correct output
even

user output
even

Test 9

Verdict: ACCEPTED

input
9

correct output
odd

user output
odd

Test 10

Verdict: ACCEPTED

input
10

correct output
even

user output
even

Test 11

Verdict: ACCEPTED

input
11

correct output
even

user output
even

Test 12

Verdict: ACCEPTED

input
12

correct output
even

user output
even

Test 13

Verdict: ACCEPTED

input
13

correct output
even

user output
even

Test 14

Verdict: ACCEPTED

input
14

correct output
even

user output
even

Test 15

Verdict: ACCEPTED

input
15

correct output
even

user output
even

Test 16

Verdict: ACCEPTED

input
16

correct output
odd

user output
odd

Test 17

Verdict: ACCEPTED

input
17

correct output
even

user output
even

Test 18

Verdict: ACCEPTED

input
18

correct output
even

user output
even

Test 19

Verdict: ACCEPTED

input
19

correct output
even

user output
even

Test 20

Verdict: ACCEPTED

input
999999874000003969

correct output
odd

user output
odd

Test 21

Verdict: ACCEPTED

input
999999999999999989

correct output
even

user output
even

Test 22

Verdict: ACCEPTED

input
1000000000000000000

correct output
odd

user output
odd