2018icpc南京/gym101981 K Kangaroo Puzzle 随机化
题意:
有一个棋盘上,1是空格,0是障碍物,一开始每个空格里都有一只袋鼠,你可以命令所有袋鼠一起向上下左右一个方向走一格,一旦碰到边界或障碍物,袋鼠就不动,如果它后面有袋鼠这两个袋鼠就会挤进一个格子,棋盘最大20*20,要求你在50000步以内让所有的袋鼠挤到一个格子里面。
题解:
这个题真的是全场最佳,不多说了看代码吧。
#include<stdio.h> #include<string.h> #include <bits/stdc++.h> using namespace std; const int MAX_N = 10; char c[4] = {'L', 'R', 'U', 'D'}; int main() { int N, M; cin >> N >> M; string s; for (int i = 1; i <= N; i++) cin >> s; int cnt = 0; srand(56346275); while (cnt++ < 50000) { printf("%c", c[rand()%4]); } puts(""); return 0; }