Submission details
Task:Secret Santa
Sender:Game of Nolife
Submission time:2016-11-12 16:03:01 +0200
Language:C++
Status:READY
Result:
Test results
testverdicttime
#10.05 sdetails
#20.06 sdetails
#30.05 sdetails
#40.05 sdetails
#50.06 sdetails
#60.05 sdetails
#70.06 sdetails
#80.06 sdetails
#90.06 sdetails
#100.06 sdetails
#110.04 sdetails
#120.05 sdetails
#130.05 sdetails
#140.05 sdetails
#150.05 sdetails
#160.05 sdetails
#170.05 sdetails
#180.06 sdetails
#190.05 sdetails
#200.05 sdetails
#210.06 sdetails
#220.05 sdetails
#230.05 sdetails
#240.06 sdetails
#250.05 sdetails
#260.06 sdetails
#270.05 sdetails
#280.05 sdetails
#290.06 sdetails
#300.05 sdetails
#310.05 sdetails
#320.06 sdetails

Code

#include <bits/stdc++.h>
#define F first
#define S second
#define X real()
#define Y imag()
using namespace std;
typedef long long ll;
typedef long double ld;

int main(){
	ios_base::sync_with_stdio(0);
	cin.tie(0);
	int n;
	cin>>n;
	if (__builtin_popcount(n)<7 || n==127) {
		if (n==0) {
			cout<<"ZE A\nDI A\n";
			return 0;
		}
		if (n==1) {
			cout<<"ST A\nDI A\n";
			return 0;
		}
		int hlp=0;
		cout<<"ST X\n";
		hlp++;
		vector<int> asd;
		while (n) {
			asd.push_back(n%2);
			n/=2;
		}
		reverse(asd.begin(),asd.end());
		cout<<"PH X\nPH X\nAD\n";
		hlp+=3;
		if (asd[1]==1) {
			cout<<"PH X\nAD\n";
			hlp+=2;
		}
		cout<<"PL Y\n";
		hlp++;
		for (unsigned int j=2;j<asd.size();j++) {
			cout<<"PH Y\nPH Y\nAD\n";
			hlp+=3;
			if (asd[j]==1) {
				cout<<"PH X\nAD\n";
				hlp+=2;
			}
			cout<<"PL Y\n";
			hlp++;
		}
		hlp++;
		cout<<"DI Y\n";
//		cerr<<hlp<<endl;
	}
	if (n==255) {
		cout<<"ST X\n";
		cout<<"PH X\nPH X\nPH X\nAD\nAD\n";
		cout<<"PL Y\n";
		cout<<"PH Y\nPH Y\nAD\n";
		cout<<"PL X\n";
		cout<<"PH X\nPH X\nAD\n";
		cout<<"PH Y\nAD\n";
		cout<<"PL Y\n";
		cout<<"PH Y\nPH Y\nAD\nPL X\n";
		cout<<"PH X\nPH X\nAD\nPL X\n";
		cout<<"PH X\nPH X\nAD\nPL X\n";
		cout<<"PH X\nPH X\nAD\nPH Y\nAD\nPL A\n";
		cout<<"DI A\n";
	}
	if (n==254) {
		cout<<"ST X\n";
		cout<<"PH X\nPH X\nPH X\nAD\nAD\n";
		cout<<"PL Y\n";
		cout<<"PH Y\nPH Y\nPH X\nAD\nAD\n";
		cout<<"PL A\n";
		cout<<"PH A\nPH A\nAD\n";
		cout<<"PL Y\n";
		cout<<"PH Y\nPH Y\nAD\n";
		cout<<"PL Y\n";
		cout<<"PH Y\nPH Y\nAD\nPH A\nAD\n";
		cout<<"PL Y\n";
		cout<<"PH Y\nPH Y\nAD\nPH X\n AD\n";
		cout<<"PL Y\n";
		cout<<"PH Y\nPH Y\nAD\n";
		cout<<"PL A\n";
		cout<<"DI A\n";
	}
	if (n==253) {
		cout<<"ST X\n";
		cout<<"PH X\nPH X\nPH X\nAD\nAD\n";
		cout<<"PL Y\n";
		cout<<"PH Y\nPH Y\nPH X\nAD\nAD\n";
		cout<<"PL A\n";
		cout<<"PH A\nPH A\nAD\n";
		cout<<"PL Y\n";
		cout<<"PH Y\nPH Y\nAD\n";
		cout<<"PL Y\n";
		cout<<"PH Y\nPH Y\nAD\nPH A\nAD\n";
		cout<<"PL Y\n";
		cout<<"PH Y\nPH Y\nAD\n";
		cout<<"PL Y\n";
		cout<<"PH Y\nPH Y\nAD\nPH X\n AD\n";
		cout<<"PL A\n";
		cout<<"DI A\n";
	}
	if (n==251) {
		cout<<"ST X\n";
		cout<<"PH X\nPH X\nPH X\nAD\nAD\n";
		cout<<"PL Y\n";
		cout<<"PH Y\nPH Y\nPH X\nAD\nAD\n";
		cout<<"PL A\n";
		cout<<"PH A\nPH A\nAD\n";
		cout<<"PL A\n";
		cout<<"PH A\nPH A\nAD\nPH Y\nAD\n";
		cout<<"PL A\n";
		cout<<"PH A\nPH A\nAD\n";
		cout<<"PL A\n";
		cout<<"PH A\nPH A\nAD\n";
		cout<<"PL A\n";
		cout<<"PH A\nPH A\nAD\nPH Y\n AD\n";
		cout<<"PL A\n";
		cout<<"DI A\n";
	}
	if (n==247) {
		cout<<"ST X\n";
		cout<<"PH X\nPH X\nPH X\nAD\nAD\n";
		cout<<"PL Y\n";
		cout<<"PH Y\nPH Y\nAD\n";
		cout<<"PL A\n";
		cout<<"PH A\nPH A\nAD\nPH Y\nAD\n";
		cout<<"PL A\n";
		cout<<"PH A\nPH A\nAD\n";
		cout<<"PL A\n";
		cout<<"PH A\nPH A\nAD\n";
		cout<<"PL A\n";
		cout<<"PH A\nPH A\nAD\nPH Y\nAD\n";
		cout<<"PL A\n";
		cout<<"PH A\nPH A\nAD\nPH X\n AD\n";
		cout<<"PL A\n";
		cout<<"DI A\n";
	}
	if (n==239) {
		cout<<"ST X\n";
		cout<<"PH X\nPH X\nPH X\nAD\nAD\n";
		cout<<"PL Y\n";
		cout<<"PH Y\nPH Y\nAD\n";
		cout<<"PL A\n";
		cout<<"PH A\nPH A\nAD\nPH Y\nAD\n";
		cout<<"PL A\n";
		cout<<"PH A\nPH A\nAD\n";
		cout<<"PL A\n";
		cout<<"PH A\nPH A\nAD\n";
		cout<<"PL A\n";
		cout<<"PH A\nPH A\nAD\nPH Y\nAD\n";
		cout<<"PL A\n";
		cout<<"PH A\nPH A\nAD\nPH X\n AD\n";
		cout<<"PL A\n";
		cout<<"DI A\n";
	}
	if (n==223) {
		cout<<"ST X\n";
		cout<<"PH X\nPH X\nPH X\nAD\nAD\n";
		cout<<"PL Y\n";
		cout<<"PH Y\nPH Y\nAD\n";
		cout<<"PL A\n";
		cout<<"PH A\nPH A\nAD\nPH X\nAD\n";
		cout<<"PL A\n";
		cout<<"PH A\nPH A\nAD\n";
		cout<<"PL A\n";
		cout<<"PH A\nPH A\nAD\nPH Y\nAD\n";
		cout<<"PL A\n";
		cout<<"PH A\nPH A\nAD\n";
		cout<<"PL A\n";
		cout<<"PH A\nPH A\nAD\nPH Y\nAD\n";
		cout<<"PL A\n";
		cout<<"DI A\n";
	}
	if (n==191) {
		cout<<"ST X\n";
		cout<<"PH X\nPH X\nPH X\nAD\nAD\n";
		cout<<"PL Y\n";
		cout<<"PH Y\nPH Y\nPH X\nAD\nAD\n";
		cout<<"PL Y\n";
		cout<<"PH Y\nPH Y\nAD\n";
		cout<<"PL A\n";
		cout<<"PH A\nPH A\nAD\n";
		cout<<"PL A\n";
		cout<<"PH A\nPH A\nPH Y\nAD\nAD\n";
		cout<<"PL A\n";
		cout<<"PH A\nPH X\nAD\n";
		cout<<"PL X\n";
		cout<<"PH X\nPH X\nAD\nPH A\nAD\n";
		cout<<"PL A\nDI A\n";
	}
}

Test details

Test 1

Verdict:

input
1

correct output
1.0000000000

user output
ST A
DI A

Test 2

Verdict:

input
999

correct output
0.6321205588

user output
(empty)

Test 3

Verdict:

input
1000

correct output
0.6321205588

user output
ST X
PH X
PH X
AD
PH X
...

Test 4

Verdict:

input
1000000

correct output
0.6321205588

user output
(empty)

Test 5

Verdict:

input
1000000000000

correct output
0.6321205588

user output
(empty)

Test 6

Verdict:

input
7

correct output
0.6321428571

user output
ST X
PH X
PH X
AD
PH X
...

Test 7

Verdict:

input
8

correct output
0.6321180556

user output
ST X
PH X
PH X
AD
PL Y
...

Test 8

Verdict:

input
9

correct output
0.6321205588

user output
ST X
PH X
PH X
AD
PL Y
...

Test 9

Verdict:

input
11

correct output
0.6321205588

user output
ST X
PH X
PH X
AD
PL Y
...

Test 10

Verdict:

input
12

correct output
0.6321205588

user output
ST X
PH X
PH X
AD
PH X
...

Test 11

Verdict:

input
13

correct output
0.6321205588

user output
ST X
PH X
PH X
AD
PH X
...

Test 12

Verdict:

input
14

correct output
0.6321205588

user output
ST X
PH X
PH X
AD
PH X
...

Test 13

Verdict:

input
19

correct output
0.63212056

user output
ST X
PH X
PH X
AD
PL Y
...

Test 14

Verdict:

input
20

correct output
0.63212056

user output
ST X
PH X
PH X
AD
PL Y
...

Test 15

Verdict:

input
21

correct output
0.63212056

user output
ST X
PH X
PH X
AD
PL Y
...

Test 16

Verdict:

input
45

correct output
0.63212056

user output
ST X
PH X
PH X
AD
PL Y
...

Test 17

Verdict:

input
59

correct output
0.63212056

user output
ST X
PH X
PH X
AD
PH X
...

Test 18

Verdict:

input
72

correct output
0.63212056

user output
ST X
PH X
PH X
AD
PL Y
...

Test 19

Verdict:

input
98

correct output
0.63212056

user output
ST X
PH X
PH X
AD
PH X
...

Test 20

Verdict:

input
104

correct output
0.63212056

user output
ST X
PH X
PH X
AD
PH X
...

Test 21

Verdict:

input
299

correct output
0.63212056

user output
ST X
PH X
PH X
AD
PL Y
...

Test 22

Verdict:

input
986

correct output
0.63212056

user output
(empty)

Test 23

Verdict:

input
2233

correct output
0.63212056

user output
ST X
PH X
PH X
AD
PL Y
...

Test 24

Verdict:

input
112233

correct output
0.63212056

user output
(empty)

Test 25

Verdict:

input
4123123

correct output
0.63212056

user output
(empty)

Test 26

Verdict:

input
123321123

correct output
0.63212056

user output
(empty)

Test 27

Verdict:

input
4

correct output
0.6250000000

user output
ST X
PH X
PH X
AD
PL Y
...

Test 28

Verdict:

input
5

correct output
0.6333333333

user output
ST X
PH X
PH X
AD
PL Y
...

Test 29

Verdict:

input
10

correct output
0.6321205357

user output
ST X
PH X
PH X
AD
PL Y
...

Test 30

Verdict:

input
66

correct output
0.6321205588

user output
ST X
PH X
PH X
AD
PL Y
...

Test 31

Verdict:

input
475

correct output
0.6321205588

user output
(empty)

Test 32

Verdict:

input
770

correct output
0.6321205588

user output
ST X
PH X
PH X
AD
PH X
...