博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Gym 100496A Avangard Latin Squares(矩阵游戏)
阅读量:7199 次
发布时间:2019-06-29

本文共 641 字,大约阅读时间需要 2 分钟。

题意:输入一个n,表示在n*n的矩阵中填1~n,使每行每列以及所有正对角线所有反对角线均出现1~n一次。若存在,输出Yes和矩阵,否则输出No;

思路:比赛的时候没思路。将1~n换为0~n较好处理一些。先只考虑0的位置,每行将0向一个方向移动固定格子数,枚举所需的移动步数,

        若满足条件(无同行同列同对角线)则Yes,1~n以相同步数移动;否则为No;

#include
#include
#include
using namespace std;int n,m,flag;int pos[5050],pre[5050];int main(){ freopen("avangard.in","r",stdin); freopen("avangard.out","w",stdout); int i,j,k,cnt; while(scanf("%d",&n)!=EOF) { cnt=0; for(i=2;i
n) pos[j]-=n; } } } } return 0;}

 

转载于:https://www.cnblogs.com/dashuzhilin/p/4643829.html

你可能感兴趣的文章
Docker images
查看>>
OpenJudge 4146:数字方格 java穷举法
查看>>
搭建linuxFTP的步骤
查看>>
跟我一起学docker(八)--Dockerfile
查看>>
做SEO,选择大于努力
查看>>
python web开发-flask调试模式
查看>>
3分钟看懂linux磁盘划分
查看>>
Linux-LAMP 默认页,虚拟主机
查看>>
Node.js 特点
查看>>
Linux-日志管理
查看>>
MySQL数据库系统
查看>>
Android Studio 提示帮助文档 一直显示:fetching documentation
查看>>
新 Terraform 提供商: F5 Networks, Nutanix, 腾讯云, Helm
查看>>
SpringBoot框架简介及搭建
查看>>
拯救 Java Code Style 强迫症
查看>>
PDF文档怎样在线合并?
查看>>
大侦探福老师——幽灵Crash谜踪案
查看>>
一个故事告诉你什么才是好的程序员
查看>>
python subprocess模块 监控子进程的2种方式 忙等待和立即返回同时设置子进程超时...
查看>>
Java 网络编程
查看>>