B. Nauuo and Chess

原题地址
题意就是说Nauuo喜欢玩棋子,然后问你,Nauuo 有n个棋子 , 如何放 ,能使棋盘m最小,且输出位置。
这道题的关键是|ri−rj|+|ci−cj|≥|i−j||ri−rj|+|ci−cj|≥|i−j| .这个条件在最小棋盘上必须所有棋子都满足才行


之后就是棋子位置的问题了,因为m已经求完了,
所以棋盘的第一行可以按顺序放棋子, 第一行放完之后 , 因为要保证|ri−rj|+|ci−cj|≥|i−j||ri−rj|+|ci−cj|≥|i−j|时刻满足 , 所以 从第二行开始 只要把棋子放在最后一列就行。
附上代码:

#include<iostream>
#include<bits/stdc++.h>
#include<string>
#include<cmath>
#include<iomanip>
#include<algorithm>
using namespace std;


int main()
{
    int n;
    cin>>n;
   int x = n/2+1;
   cout<<x <<endl;
   for(int i=1;i<=x;i++){
    cout<<"1"<<" "<<i<<endl;
   }
    for(int i=2;i<=n -x+1;i++){
        cout<<i <<" "<<x<<endl;
    }
    return 0;



}

全部评论

相关推荐

02-01 19:48
门头沟学院 Java
神哥了不得:(非引流)直接暑期吧,没时间日常了,老鱼简历把水印去了,或者换个模板,简历字体大小都不太行,建议换2个高质量的项目,面试应该还会再多一些
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务