题解:AT_arc207_b [ARC207B] Balanced Neighbors 2
你好吗?这题需要你用忍者的态度来观察呦。
首先你需要用手写的从前,来跨时代的发现
接着你看甜甜的样例,当
然后我们猜测对于
怎么了,这个样例明明就只有一点点,然后你从样例里啥也看不出了。。。(傻笑)
通过刚刚的猜测,我们可以注意到偶数当我们构造一个循环,对于
因此,
对于点
如果你现在就交的话,你会发现说好的幸福呢?对不起,它给了让你安静的 Wa,你还是挂了恰好一半的点。
胡扯,我们追求完美主义,给我一首歌的时间,你就会想起其实还是有奇数解的,构造出
cin>>n;
if(n<6) cout<<"-1",exit(0);
int t=n>>1;
cout<<t*(t-1)+(n&1)*t<<'\n';
rep(i,1,t){
rep(j,t+1,t+t){
if(i+j!=t+t+1) cout<<i<<' '<<j<<'\n';
}
if(n&1) cout<<i<<' '<<n<<'\n';
}