AOJ 1129 - Hanafuda Shuffle
問題文 : http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=1129&lang=jp
解法 :
Straight-forward ですね... ICPC 難易度表を埋めています.
コード :
#include <cstdio> using namespace std; int main() { int n, r; int c[50], d[50]; while (scanf("%d %d", &n, &r) && n){ for (int i = 0; i < n; i++) c[i] = n - i; for (int i = 0; i < r; i++){ int p, dx; scanf("%d %d", &p, &dx); for (int j = 0; j < n; j++) d[j] = c[j]; for (int j = 0; j < p - 1; j++) d[j + dx] = c[j]; for (int j = 0; j < dx; j++) d[j] = c[j + p - 1]; for (int j = 0; j < n; j++) c[j] = d[j]; } printf("%d\n", c[0]); } }