UVA - 10161 Ant on a Chessboard
来源:互联网 发布:英伟达10系列显卡知乎 编辑:程序博客网 时间:2024/06/05 03:24
题目大意:给出数字,求该数字在矩阵中的位置
解体思路:蛋疼的规律找到就可以,对角线是以1为开头,后面公差为2的等差数列的和
#include<cstdio>int main() {//int n, x, y, number;//scanf("%d", &n);//int a[100][100];/*for(int i = 0, j = n -1; j >= 0; j--,i++) {number = 1 + (j + 1) * j;a[i][j] = number;if(j % 2 == 0) {int add = 1;int fu = -1;for( y = j - 1; y >= 0; y--) {a[i][y]= number + add;add++;}for( x = i + 1; x < n; x++) {a[x][j] = number + fu;fu--;}}else{int add = 1;int fu = -1;for(y = j - 1; y >= 0; y--){a[i][y] = number + fu;fu--;}for(x = i + 1; x < n; x++) {a[x][j] = number + add;add++;}}}for(int i = 0; i < n; i++) {for(int j = 0; j < n; j++)printf("%d\t",a[i][j]);printf("\n");}*/int num;int number;while(scanf("%d", &num) != EOF && num) {for(int i = 0; ;i++) {number = 1 + (i + 1) * i;if(number - i <= num && num <= number + i) {int move = num - number;//printf("move is %d\t i is %d\n", move, i);if( i % 2 == 0)if(move >= 0)printf("%d %d\n",i+1-move,i+1);elseprintf("%d %d\n",i+1,i+1+move);elseif(move >= 0) printf("%d %d\n",i+1,i+1-move);elseprintf("%d %d\n",i+1+move,i+1);break;}}}return 0;}
0 0
- uva 10161 Ant on a Chessboard
- UVA 10161 - Ant on a Chessboard
- uva 10161 - Ant on a Chessboard
- UVa 10161 - Ant on a Chessboard
- UVA 10161-Ant on a Chessboard
- uva 10161 - Ant on a Chessboard
- UVa 10161 - Ant on a Chessboard
- UVA 10161 Ant on a Chessboard
- uva 10161 - Ant on a Chessboard
- UVa 10161: Ant on a Chessboard
- uva 10161 Ant on a Chessboard
- UVA 10161 Ant on a Chessboard
- uva 10161 - Ant on a Chessboard
- UVa 10161 - Ant on a Chessboard
- UVA - 10161 - Ant on a Chessboard
- uva--10161--Ant on a Chessboard
- UVa 10161 Ant on a Chessboard
- UVa 10161 - Ant on a Chessboard
- 黑马程序员——JAVA拾遗之网络编程
- ffmpeg参数解释
- 杂说Android开发--MVC模型
- C#-利用ZPL语言完成条形码的生成和打印
- 绘制字符串(core graphic)
- UVA - 10161 Ant on a Chessboard
- 很特别的一个动态规划入门教程
- 数据库—耿建玲视频总结(三)
- Python深入学习之内存管理
- 几个简单的gdb调试命令
- oracle知识点_闪回(flashback)
- leetcode:Merge k Sorted Lists
- 现阶段大略总结的《数据结构》发散图——尚不完善
- 随机数与排列组合:生成1亿个随机的不同16位数