标签:class namespace name iostream base ase get ++ def
http://codeforces.com/contest/1327/problem/C
给你一个图和一堆点,然后问你这一堆点和一堆目标点怎么才能到达这些目标点至少一次。
其实题目已经给你提示了,上面说移动次数不大于2nm。
其实在2nm内就能把图上所有位置遍历一遍。
简单来说就是不管你脑洞开的有多大,没有用。该暴力还是得暴力。
先把最右上角的点移动到左下角,再按照s型移动到原始位置
就能保证所有点都经历过这个图上别的所有点了。
#include <iostream> using namespace std; int main() { ios_base :: sync_with_stdio(0); cin.tie(0); cout.tie(0); int n, m, k; cin >> n >> m >> k; for (int i = 0; i < k; i++) { int x, y; cin >> x >> y; } for (int i = 0; i < k; i++) { int x, y; cin >> x >> y; } string res = ""; for (int i = 0; i < m - 1; i++) res += "L"; for (int i = 0; i < n - 1; i++) res += "U"; for (int i = 0; i < n; i++) { if (i % 2 == 0) { for (int j = 0; j < m - 1; j++) { res += "R"; } } else { for (int j = 0; j < m - 1; j++) { res += "L"; } } if (i != n - 1) res += "D"; } cout << res.size() << endl; cout << res << endl; return 0; }
C - Game with Chips.Educational Codeforces Round 84 (Rated for Div. 2)
标签:class namespace name iostream base ase get ++ def
原文地址:https://www.cnblogs.com/LH2000/p/12558113.html