C - 入れ替え / AtCoderBiginnerContest #004

abc004.contest.atcoder.jp

#include <algorithm>
#include <iostream>
using namespace std;

void Solve(int n)	{
	string str="123456";

	for (int i=0; i<n%30; ++i)
		swap(str[i%5],str[i%5+1]);
	cout << str << endl;
}

int main(void)	{
	int n;

	cin >> n;
	Solve(n);
	return 0;
}

結果を見ていった結果30回で最初の状態と文字列が一致することから、
30の剰余で入れ替えを行う。その結果を出力。
~了~