hihoCoder 1257 Snake Carpet(构造)
来源:互联网 发布:go并发编程实战 微盘 编辑:程序博客网 时间:2024/06/04 08:43
题目链接:hihoCoder 1257 Snake Carpet
代码
#include <cstdio>#include <cstring>#include <vector>#include <algorithm>using namespace std;typedef pair<int,int> pii;char ans[5][100] = { "1 1\n1 1", "1 3\n1 1\n1 2 1 3", "2 3\n1 2\n1 3 2 3\n1 1 2 1 2 2", "2 5\n1 4\n1 5 2 5\n1 1 2 1 2 2\n1 2 1 3 2 3 2 4", "3 4\n1 4 1 5\n2 4 2 5 3 5\n2 2 2 3 3 3 3 2\n3 1 2 1 1 1 1 2 1 3"};void put(vector<pii>& out) { printf("%d %d", out[0].first, out[0].second); for (int i = 1; i < out.size(); i++) printf(" %d %d", out[i].first, out[i].second); printf("\n");}void dfs (int r, int c, int d, int n) { if (d > n) return; vector<pii> out; if (d == n) { for (int i = 1; i < r; i++) out.push_back(make_pair(i, c)); for (int i = r-1; i; i--) out.push_back(make_pair(i, c+1)); put(out); } else { for (int i = r-2; i; i--) out.push_back(make_pair(i, c)); for (int i = 1; i <= r; i++) out.push_back(make_pair(i, c+1)); put(out); out.clear(); for (int i = 1; i <= c; i++) out.push_back(make_pair(r, i)); out.push_back(make_pair(r-1, c)); put(out); } dfs(r + 1, c + 2, d + 2, n);}int main () { int n; while (scanf("%d", &n) == 1) { if (n < 5) printf("%s\n", ans[n-1]); else { int h = (n + 1) >> 1; int w = n * (n+1) / 2 / h; printf("%d %d\n%s\n", h, w, ans[4]); dfs(4, 6, 6, n); } } return 0;}
0 0
- hihoCoder 1257 Snake Carpet(构造)
- hihocoder 1257 Snake Carpet
- HihoCoder #1257 (2015-2016 ACM 北京站) Snake Carpet [构造题]
- hihoCoder 1257 Snake Carpet (构造题+详解) 2015北京区域赛
- hihocoder 1257 Snake Carpet 模拟构造题||2015北京现场赛I题
- hihoCoder 1257 Snake Carpet 2015北京区域赛
- hiho #1257(Snake Carpet-贪吃蛇构造题)
- hihocoder 1257 Snake Carpet 2015 ACM_ICPC 北京区域赛 I 题
- UVALive 7269 Snake Carpet
- UVALive 7269 Snake Carpet 构造 2015北京区域赛的铜牌题
- [Codeforces297D]Color the Carpet(构造)
- [Codeforces297D]Color the Carpet(构造)
- 【hihocoder1257 2015北京赛区I】【构造 从公式入手】Snake Carpet 构造矩阵使得恰好容纳1~n个拐拐蛇行图案
- codeforces 297D Color the Carpet(构造)
- 2015 icpc北京赛区现场赛 Snake Carpet
- 2015ACM-ICPC 北京赛区 Problem I. Snake Carpet
- Snake
- snake
- 安卓Palette(颜色拾取)的使用
- 初识Json
- 1.0.1Kitematic
- @JoinColumn 详解
- linux静态Ip地址配置
- hihoCoder 1257 Snake Carpet(构造)
- 分页查询
- BAT解密:互联网技术发展之路(1) - 技术发展的驱动力
- 为什么屌丝码农身边没有美女朋友
- [CodeChef OCT13]斐波那契数Fibonacci Number解题报告
- Error:Execution failed for task ':app:dexDebug'. > com.android.ide.common.process.ProcessException:
- XCode 7上传遇到ERROR ITMS-90535 Unexpected CFBundleExecutable Key. 的解决办法
- C ++中的NULL与nullptr的区别
- TortoiseSVN设置忽略文件和目录文件夹