CF1929B
题意
给定一个 \(n\times n\) 的正方形,已知正方形最多有 \(4\times n-2\) 条对角线,要求要有至少 \(k\) 条对角线经过至少一块黑色方格,求至少要将几条对角线涂成黑色。
分析
分类讨论:
- 当 \(k<=4\times n-4\) 时,就只需要在上下两侧图就行,所以答案是 \([\frac{k}{2}]\)。
- 当 \(k>4\times n-4\) 时,则答案是 \(k-2\times n+2\)。
当 \(n==4,k==12\) 时:
代码
#include<bits/stdc++.h>
using namespace std;
int t,n,k;
int main(){
cin>>t;
while(t--){
cin>>n>>k;
if(k<=4*n-4)cout<<(k+1)/2;//千万不能写ceil(k*1.0)/2
else cout<<k-2*n+2;
cout<<"\n";
}
return 0;
}
标签:int,题解,CF1929B,times,对角线,Sasha,Drawing
From: https://www.cnblogs.com/AUBSwords/p/18117694