博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
SGU 109 Magic of David Copperfield II
阅读量:6488 次
发布时间:2019-06-24

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

SGU_109

    一开始没有看到Ki是有范围限制的,于是构造了一个最简单的情况,先挪1步,然后把除左上角3个以外全删掉,然后再挪3步,除左上角外两个也删掉。返回的结果是PE,也着实让我困扰了一阵子。

    虽然上面出错了,不过最基本的构造思想还是有了:①如果移动奇数步,那么只可能移到和当前格子的曼哈顿距离是奇数的位置,这样相当于把棋盘进行了黑白染色,奇数步只能走到异色的区域,偶数步只能走到同色的区域。②我们可以先让观众移动N步,然后用类似上面的办法,一点点把观众逼到左上角即可。

#include
#include
int N; void solve() {
int i, j, x, y, n; printf("%d", N); for(i = 2; i < N; i ++) for(j = N - i + 1; j < N; j ++) printf(" %d", i * N + j + 1); printf("\n"); n = (N % 2 ? N + 2 : N + 1); for(i = N; i >= 1; i --) {
printf("%d", n); n += 2; for(x = 0, y = i; x < N && y >= 0; x ++, y --) {
if(y >= N) continue; printf(" %d", x * N + y + 1); } printf("\n"); } } int main() {
while(scanf("%d", &N) == 1) {
if(N == 2) {
printf("3 4\n"); printf("5 2 3\n"); } else solve(); } return 0; }

转载地址:http://uiauo.baihongyu.com/

你可能感兴趣的文章
(周期计划-7)常用集合的源码分析:ArrayList
查看>>
“分叉并商品化”,GitLab 和 Elastic 炮轰 AWS 的开源方法
查看>>
MKVToolNix v33.0.0 发布,MKV 视频编辑工具软件
查看>>
Egg 2.19.0 发布,阿里开源的企业级 Node.js 框架
查看>>
CentOS7.4安装Gitlab10.5.1及汉化
查看>>
Virtualbox以及VWare在Win10下的不兼容
查看>>
Github上如何在Fork到的开源项目中提交Pull requests?
查看>>
Java单向链表反转
查看>>
一些开发遇到的"小问题",你能答对多少?
查看>>
面对前车之鉴的AR,现在的VR要做些什么?
查看>>
自然语言理解势头正强劲,可总还是缺点啥
查看>>
【python图像处理】给图像添加透明度(alpha通道)
查看>>
区块链与微服务天生是一对
查看>>
VDI市场:探寻企业影子IT风险来源|
查看>>
阿里云黄海宇:窄带高清2.0——让直播更惊艳的魔术
查看>>
SID颁发全球显示行业个人奖项
查看>>
百度地图拖动标注后获取坐标
查看>>
RAC重要概念和原理
查看>>
Mysql客户端下载地址
查看>>
高并发网络编程之epoll详解
查看>>