SYCOJ1018神奇的幻方
2021/7/13 6:07:46
本文主要是介绍SYCOJ1018神奇的幻方,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
题目—神奇的幻方 (shiyancang.cn)
模拟就对了
因为每一个状态由前一个状态决定,所以只需要记录即可
#include<bits/stdc++.h> using namespace std; const int N=52; int k[N][N],n,pre1,pre2; int main() { scanf("%d",&n); k[1][(n+1)/2]=1,pre1=1,pre2=(n+1)/2; for(int i=2;i<=n*n;i++) { if(pre1==1&&pre2!=n) k[n][pre2+1]=i,pre1=n,pre2=pre2+1; else if(pre2==n&&pre1!=1) k[pre1-1][1]=i,pre1=pre1-1,pre2=1; else if(pre1==1&&pre2==n) k[pre1+1][pre2]=i,pre1+=1,pre2=pre2; else if(pre1!=1&&pre2!=n) { if(!k[pre1-1][pre2+1]) k[pre1-1][pre2+1]=i,pre1=pre1-1,pre2=pre2+1; else k[pre1+1][pre2]=i,pre1+=1,pre2=pre2; } } for(int i=1;i<=n;i++) for(int j=1;j<=n;j++) cout<<k[i][j]<<(j==n?'\n':' '); return 0; }
这篇关于SYCOJ1018神奇的幻方的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-16在电脑上怎么模拟手机的运行环境?-icode9专业技术文章分享
- 2024-11-16接收socket数据,莫名其妙socket就关闭了是怎么回事?-icode9专业技术文章分享
- 2024-11-16ts nightly是什么?-icode9专业技术文章分享
- 2024-11-16如何升级vscode版本?-icode9专业技术文章分享
- 2024-11-16如何设置vscode默认的node版本?-icode9专业技术文章分享
- 2024-11-16shell 如何创建一个文件夹?-icode9专业技术文章分享
- 2024-11-16useReducer案例详解:从零开始理解与应用
- 2024-11-15聊聊用LangChain4J构建聊天机器人的那些事儿
- 2024-11-15LangChain 和 LlamaIndex 在检索增强生成(RAG)中的大比拼:全面对比评测
- 2024-11-15平台工程不只是配置管理:超越CFEngine的方法