博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
cogs 1811. [NOIP2014]螺旋矩阵
阅读量:5094 次
发布时间:2019-06-13

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

★   输入文件:matrixc.in   输出文件:matrixc.out   简单对比

时间限制:1 s   内存限制:256 MB

【题目描述】

 

MLE:

#include
#include
#include
using namespace std;const int N=10010;long long a[N][N];int n,x,y;int main(){ freopen("matrixc.in","r",stdin); freopen("matrixc.out","w",stdout); scanf("%d%d%d",&n,&x,&y); long long tot=0; int i=1,j=0; long long nn=n*n; while(1) { while((++j)<=n&&!a[i][j]) a[i][j]=(++tot); j--; while((++i)<=n&&!a[i][j]) a[i][j]=(++tot); i--; while((--j)>=1&&!a[i][j]) a[i][j]=(++tot); j++; while((--i)>=1&&!a[i][j]) a[i][j]=(++tot); i++; if(tot>=nn) { printf("%d",a[x][y]); return 0; } } return 0; }

找规律:

#include
int main(){ freopen("matrixc.in","r",stdin); freopen("matrixc.out","w",stdout); int n,i,j; int m;//m表示总共的层数 int k,p,q;//循环变量 int flag=0;//标志性变量:等于0表示尚未循环到目标元素(i,j) int t; int len; scanf("%d%d%d",&n,&i,&j); m=(n+1)/2; //m表示总共的层数 t=1; //t表示要填进数组的数字 for(k=1;k<=m&&flag==0;k++) { p=k,q=k; //(k,k)是第k层左上角坐标点 len=n-2*(k-1);//表示当前层中每一条边的元素个数 for(;q<=(k+len-1);q++)//填充当前层的顶边 { if(p==i&&q==j) { printf("%d\n",t); return 0; } t++; } q--; p++; for(;p<=(k+len-1);p++)//填充当前层的右边 { if(p==i&&q==j) { printf("%d\n",t); return 0; } t++; } p--; q--; for(;q>=k;q--)//填充当前层的下边 { if(p==i&&q==j) { printf("%d\n",t); return 0; } t++; } q++; p--; for(;p>k;p--)//填充当前层的左边 { if(p==i&&q==j) { printf("%d\n",t); return 0; } t++; } } return 0;}

  

转载于:https://www.cnblogs.com/lyqlyq/p/7223674.html

你可能感兴趣的文章
查询消除重复行
查看>>
[leetcode]Minimum Path Sum
查看>>
内存管理 浅析 内存管理/内存优化技巧
查看>>
Json格式的字符串转换为正常显示的日期格式
查看>>
[转]Android xxx is not translated in yyy, zzz 的解决方法
查看>>
Mobiscroll脚本破解,去除Trial和注册时间限制【转】
查看>>
iframe父子页面通信
查看>>
map基本用法
查看>>
Redis快速入门
查看>>
BootStrap---2.表格和按钮
查看>>
CRC计算模型
查看>>
Ajax之404,200等查询
查看>>
Aizu - 1378 Secret of Chocolate Poles (DP)
查看>>
csv HTTP简单表服务器
查看>>
OO设计的接口分隔原则
查看>>
数据库连接字符串大全 (转载)
查看>>
IO流写出到本地 D盘demoIO.txt 文本中
查看>>
Screening technology proved cost effective deal
查看>>
Redis Cluster高可用集群在线迁移操作记录【转】
查看>>
二、spring中装配bean
查看>>