| Task: | Forest |
| Sender: | >--) ) ) )*> |
| Submission time: | 2015-09-16 18:58:20 +0300 |
| Language: | C++ |
| Status: | READY |
| Result: | WRONG ANSWER |
| test | verdict | time | |
|---|---|---|---|
| #1 | WRONG ANSWER | 0.05 s | details |
| #2 | WRONG ANSWER | 0.05 s | details |
| #3 | WRONG ANSWER | 0.05 s | details |
| #4 | WRONG ANSWER | 0.06 s | details |
| #5 | WRONG ANSWER | 0.05 s | details |
| #6 | WRONG ANSWER | 0.05 s | details |
| #7 | WRONG ANSWER | 0.06 s | details |
| #8 | WRONG ANSWER | 0.06 s | details |
| #9 | WRONG ANSWER | 0.05 s | details |
| #10 | WRONG ANSWER | 0.06 s | details |
| #11 | WRONG ANSWER | 0.06 s | details |
| #12 | WRONG ANSWER | 0.05 s | details |
| #13 | WRONG ANSWER | 0.05 s | details |
| #14 | WRONG ANSWER | 0.06 s | details |
| #15 | WRONG ANSWER | 0.05 s | details |
| #16 | WRONG ANSWER | 0.05 s | details |
| #17 | WRONG ANSWER | 0.05 s | details |
| #18 | WRONG ANSWER | 0.05 s | details |
| #19 | WRONG ANSWER | 0.05 s | details |
| #20 | WRONG ANSWER | 0.06 s | details |
Code
#include <unordered_set>
#include <algorithm>
#include <iostream>
#include <iterator>
#include <numeric>
#include <sstream>
#include <fstream>
#include <cassert>
#include <climits>
#include <cstdlib>
#include <cstring>
#include <string>
#include <cstdio>
#include <vector>
#include <bitset>
#include <cmath>
#include <queue>
#include <deque>
#include <stack>
#include <list>
#include <map>
#include <set>
using namespace std;
#define ll long long
#define si pair<string,int>
#define iii pair<int,ii>
#define vi vector<int>
#define vc vector<char>
#define vs vector<string>
#define msvs map<string,vs>
#define msi map<string,int>
#define mss map<string,int>
#define us unordered_set
#define um unordered_map
#define pq priority_queue
#define pb push_back
#define mp make_pair
#define forall(i,a,b) for (int i=a;i<b;i++)
#define foreach(v,c) for( typeof( (c).begin()) v = (c).begin(); v != (c).end(); ++v)
#define all(a) a.begin(), a.end()
#define in(a,b) ( (b).find(a) != (b).end())
#define fill(a,v) memset(a, v, sizeof a)
#define sz(a) ((int)(a.size()))
#define N (1<<17)
#define M 1000000007
#define I 500000004
#define eps 1e-10
vector<pair<ll,ll>> f;
bool modulo(ll a) {
if (a < 0) return (abs(a)%2) == 0;
else return a%2==0;
}
int main()
{
cin.sync_with_stdio(false);
int n; cin >> n;
ll x,y; cin >> x >> y;
x += 10*10*10*10*10*10;
y += 10*10*10*10*10*10;
set<pair<ll,ll>> s;
for (int i = 0; i < n; i++) {
ll xi,yi; cin >> xi >> yi;
xi += 10*10*10*10*10*10;
yi += 10*10*10*10*10*10;
xi -= x;
yi -= y;
if(xi != 0 && yi != 0) {
while (modulo(xi) && modulo(yi)) {
xi /= 2;
yi /= 2;
}
} else if (xi == 0) {
while (modulo(yi)) yi /= 2;
} else {
while (modulo(xi)) xi /= 2;
}
s.insert(make_pair(xi,yi));
}
cout << s.size() << "\n";
return 0;
}
Test details
Test 1
Verdict: WRONG ANSWER
| input |
|---|
| 152
391446 44026 391450 44026 391448 44028 391450 44028 ... |
| correct output |
|---|
| 117 |
| user output |
|---|
| 131 |
Test 2
Verdict: WRONG ANSWER
| input |
|---|
| 167
-395738 -130738 -395745 -130742 -395739 -130735 -395746 -130731 ... |
| correct output |
|---|
| 124 |
| user output |
|---|
| 147 |
Test 3
Verdict: WRONG ANSWER
| input |
|---|
| 183
200778 460834 200784 460841 200769 460836 200773 460830 ... |
| correct output |
|---|
| 132 |
| user output |
|---|
| 155 |
Test 4
Verdict: WRONG ANSWER
| input |
|---|
| 130
223758 419977 223753 419974 223762 419974 223759 419983 ... |
| correct output |
|---|
| 97 |
| user output |
|---|
| 114 |
Test 5
Verdict: WRONG ANSWER
| input |
|---|
| 168
375864 397759 375855 397764 375855 397757 375866 397758 ... |
| correct output |
|---|
| 124 |
| user output |
|---|
| 150 |
Test 6
Verdict: WRONG ANSWER
| input |
|---|
| 187
-23941 284266 -113941 -30734 -113941 689266 -203941 329266 ... |
| correct output |
|---|
| 134 |
| user output |
|---|
| 166 |
Test 7
Verdict: WRONG ANSWER
| input |
|---|
| 127
260079 -413943 440079 -53943 575079 36057 530079 -773943 ... |
| correct output |
|---|
| 98 |
| user output |
|---|
| 110 |
Test 8
Verdict: WRONG ANSWER
| input |
|---|
| 144
411083 460318 366083 145318 771083 865318 411083 685318 ... |
| correct output |
|---|
| 109 |
| user output |
|---|
| 131 |
Test 9
Verdict: WRONG ANSWER
| input |
|---|
| 135
-460235 328576 -145235 553576 -910235 688576 -280235 58576 ... |
| correct output |
|---|
| 98 |
| user output |
|---|
| 118 |
Test 10
Verdict: WRONG ANSWER
| input |
|---|
| 113
390086 -474936 -59914 -609936 480086 -879936 345086 -204936 ... |
| correct output |
|---|
| 86 |
| user output |
|---|
| 102 |
Test 11
Verdict: WRONG ANSWER
| input |
|---|
| 1921
221773 -175524 -75227 -72024 -75227 -72023 527773 -22524 ... |
| correct output |
|---|
| 1866 |
| user output |
|---|
| 1912 |
Test 12
Verdict: WRONG ANSWER
| input |
|---|
| 1960
-166870 -301876 4130 -45376 4129 -45376 4130 -45377 ... |
| correct output |
|---|
| 1891 |
| user output |
|---|
| 1952 |
Test 13
Verdict: WRONG ANSWER
| input |
|---|
| 1983
490468 217759 85468 357259 791968 631759 76468 150259 ... |
| correct output |
|---|
| 1917 |
| user output |
|---|
| 1966 |
Test 14
Verdict: WRONG ANSWER
| input |
|---|
| 1910
75208 56523 340708 452523 340708 452522 -356792 430023 ... |
| correct output |
|---|
| 1863 |
| user output |
|---|
| 1903 |
Test 15
Verdict: WRONG ANSWER
| input |
|---|
| 1984
-178901 -113059 -381401 12941 -381400 12941 -381401 12940 ... |
| correct output |
|---|
| 1932 |
| user output |
|---|
| 1971 |
Test 16
Verdict: WRONG ANSWER
| input |
|---|
| 2000
-318296 48998 -322618 47556 -335584 43230 -300516 32354 ... |
| correct output |
|---|
| 1794 |
| user output |
|---|
| 1868 |
Test 17
Verdict: WRONG ANSWER
| input |
|---|
| 2000
-376251 158360 -373641 158980 -386177 169482 -387909 155698 ... |
| correct output |
|---|
| 1796 |
| user output |
|---|
| 1861 |
Test 18
Verdict: WRONG ANSWER
| input |
|---|
| 2000
4141 -447930 22987 -450556 22988 -450556 8931 -452688 ... |
| correct output |
|---|
| 1797 |
| user output |
|---|
| 1870 |
Test 19
Verdict: WRONG ANSWER
| input |
|---|
| 2000
-83018 -8575 -84778 -5615 -84778 -5616 -84778 -5614 ... |
| correct output |
|---|
| 1819 |
| user output |
|---|
| 1862 |
Test 20
Verdict: WRONG ANSWER
| input |
|---|
| 2000
-199417 -261684 -204449 -244760 -219545 -193988 -183653 -255010 ... |
| correct output |
|---|
| 1803 |
| user output |
|---|
| 1873 |
