UVA 10161 - Ant on a Chessboard
来源:互联网 发布:网络论坛的案例 编辑:程序博客网 时间:2024/05/16 03:56
大致题意:给你一个足够大的棋盘,从左下角开始编号为(1,1),一只蚂蚁从(1,1)开始,按照上,右,下,右,上上,左左,上。。。的方式移动,第移动一步的时间为1秒,最后给你一个时间,问你蚂蚁的坐标。
分析:到达棋盘主对角线上的各点时间是有规律的,计算在主对角线上的大致位置,然后沿着移动方向搜一下就行了
总结:利用一下主对角线上的时间增长规律就行了吧!
代码:
#include <iostream>#include <cstdio>using namespace std;int main(){int n;while (scanf("%d", &n), n != 0){int t = 1;int i = 2;int x = 1, y = 1;while (t < n){t += i;i += 2;x++;y++;}if (x % 2 == 0){int flag = 0;for (; x >= 1; x--){if (t == n){flag = 1;break;}t--;}if (flag == 0){x = 1;y = y - 1;while (t != n){x++;t--;}}}else{int flag = 0;for (; y >= 1; y--){if (t == n){flag = 1;break;}t--;}if (flag == 0){y = 1;x = x - 1;while (t != n){y++;t--;}}}printf("%d %d\n", x, y);}return 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
- USACO Section 3.1 Agri-Net - [水]最小生成树模板题
- JDBC的CRUD示例
- VC6.0移植到VS2008后的错误总结
- Lesson3 使用Hello ACCP.NET快速热身<三>
- mybatis,stripes,spring,mysql整合乱码的解决
- UVA 10161 - Ant on a Chessboard
- Lesson1 使用Hello ACCP.NET快速热身<一>
- JDT学习之JavaCore
- hibernate3.6文档关于事务及并发策略的笔记
- 字节流和字符流的转换
- linux小命令大世界2---统计Apache或Nginx访问日志里的独立IP访问数
- 完美布线
- oracle B*Tree索引的理解
- JDT学习之ICompilationUnit