Codeforces Round #654 (Div. 2) D. Grid-00100 (构造)
2024-09-02 04:06:25
题意:构造一个\(n\)x\(n\)只含\(0\)和\(k\)个\(1\)的矩阵,统计每一行每一列\(1\)的sum,然后构造一个权值最大行和最小行的差的平方加权值最大列和最小列的差的平方的最小和(\(f(A)=(max(R)-min(R))^2+(max(C)-min(C))^2\)的最小值).
题解:假如\(k\ mod\ n=0\)的话,那么最小值一定是0,否则一定是2,直接上图吧.
1.k%n=0:
2.k%n!=0:
这样的话,规律应该显而易见了吧,我们沿着对角线构造,然后取余,填填补补即可,具体的看代码吧.
代码:
int t;
int n,k;
int a[400][400]; int main() {
ios::sync_with_stdio(false);cin.tie(0);
cin>>t;
while(t--){
cin>>n>>k;
me(a,0,sizeof(a));
if(k%n==0){
cout<<0<<endl;
}
else cout<<2<<endl;
for(int i=0;i<k%n;++i){
for(int j=i;j<=i+k/n;++j){
a[i][j%n]=1;
}
}
for(int i=k%n;i<n;++i){
for(int j=i;j<i+k/n;++j){
a[i][j%n]=1;
}
}
for(int i=0;i<n;++i){
for(int j=0;j<n;++j){
cout<<a[i][j];
}
cout<<endl;
}
} return 0;
}
最新文章
- jquery选择器(综合)
- PE文件结构
- 怎样查看Eclipse是32位还是64位
- ECshop 二次开发模板教程3
- 【ZZ】编程能力层次模型
- OpenGL8-直接分配显存-极速绘制(2)
- Android开发需要注意的地方
- dede调用时间大全标签,不同格式!
- hadoop学习;自己定义Input/OutputFormat;类引用mapreduce.mapper;三种模式
- mybatis中updateByPrimaryKeySelective
- 手撕vue-cli配置文件——config篇
- 单片机C语言基础编程源码六则
- Rasterization 学习笔记
- FreeRTOS移植到STM32上的移植过程
- openvpn用户管理、linux客户端配置及企业常用真实案例解析
- python英文与中文的词频统计
- 1、eclipse
- centos-yum离线源
- Beta 冲刺 一
- C#几个小知识点
热门文章
- zabbix的汉化
- scp传文件夹
- 【Linux】fdisk -l发现有加号"+"
- leetcode 864. 获取所有钥匙的最短路径(BFS,状态压缩)
- SAP 修改数据元素 注意事项
- IPC图像处理项目流程图
- JavaScript中的Object类型!
- Vue中:error &#39;XXXXX&#39; is not defined no-undef解决办法
- https://design-patterns.readthedocs.io/zh_CN/latest/index.html
- STM32 定时器详细篇(基于HAL库)