B. Nauuoと元の質問へのチェスリンク:http://codeforces.com/contest/1173/problem/B
タイトル効果:ボードに満たさMXMをn個のピースを置く | R&LT I - R&LT J | + | C I - C J | ≥ | I - J | | RI-RJ | + | CI-CJ |≥| I -j |(R行、cはカラムです)
一般的な考え方:斜めの対角線の作品の最大数が1357を満たすために置くことができる上、あなたが法律を見つけた後は、見つけることができます....
フィギュア
したがって、私たちは作品を置くことができます。
コードは以下の通りであります:
1の#include <cstdioを> 2の#include <iostreamの> 3の#include <アルゴリズム> 4の#include < ストリング > 5の#include <CStringの> 6の#include <cmath> 7 の#define LL長い長 8 使用 名前空間STD。 9 10 のint main()の 11 { 12 INT I、T、M、N、U、和、MAXS、分、X、Y、Z。 13 のscanf(" %d個"、&N) 14 M = N / 2 + 1 。//根据规律、直接算出棋盘大小 15 のprintf(" %d個の\ n " 、M)。 16 のために(i = 1 ; I <= M + I) 17 のprintf(" %D%D \ n "、1 、I)。 18 のための(I = 2、iがN-M + <= 1 ; ++ I) 19 のprintf(" %D%D \ n " 、I、M)。 20 21 戻り 0 ; 22 }