Good Bye 2019E(点坐标缩小一半以区分奇偶性)

//负数的左右移位

 1 #define HAVE_STRUCT_TIMESPEC
 2 #include<bits/stdc++.h>
 3 using namespace std;
 4 int a[1007],b[1007];
 5 int ans[1007];
 6 int main(){
 7     ios::sync_with_stdio(false);
 8     cin.tie(NULL);
 9     cout.tie(NULL);
10     int n;
11     cin>>n;
12     for(int i=1;i<=n;++i)
13         cin>>a[i]>>b[i];
14     int cnt=0;
15     while(cnt==0||cnt==n){
16         cnt=0;
17         for(int i=1;i<=n;++i){
18             if((a[i]+b[i])&1)
19                 ans[++cnt]=i;
20             int x=a[i],y=b[i];
21             a[i]=(x+y)>>1;
22             b[i]=(x-y)>>1;
23         }
24     }
25     cout<<cnt<<"\n";
26     for(int i=1;i<=cnt;++i)
27         cout<<ans[i]<<" ";
28  
29     return 0;
30 }

猜你喜欢

转载自www.cnblogs.com/ldudxy/p/12119856.html