Aizu Online Judge(AOJ)の過去問から、その提出コードの解答例です。
・問題: 『タイル (Tile)』
onlinejudge.u-aizu.ac.jp
入力として壁画の一辺の長さ N と,はがれたタイルの枚数 K, K 枚のはがれたタイルの位置が与えられたとき,はがれたタイルの色を求めるプログラムを作成せよ.
僕が作成、提出したコードは、以下のとおりです。
Aizu Online Judge in C++ #Volume5 - 0556 : タイル (Tile)
/* Aizu Online Judge in C++ #Volume5 - 0556 : タイル (Tile) https://onlinejudge.u-aizu.ac.jp/problems/0556 提出コードの解答例 https://neguse-atama.hatenablog.com */ #include<bits/stdc++.h> using namespace std; int main(void){ int n,k; cin>>n>>k; vector<int> a(k),b(k); for(int i=0;i<k;i++){ cin>>a[i]>>b[i]; int m=min( min(a[i]-1,n-a[i]), min(b[i]-1,n-b[i]) ); cout<<(m%3)+1<<endl; } return 0; }
設問の出典は、第10回日本情報オリンピック 予選(過去問)です。
問題は、AtCoder Problemsでも公開されています。
atcoder.jp