P2413【2013模拟赛第二场】洗牌问题 | |
|
问题描述
给你 2n 张牌,编号为1,2,3..n,n+1,..2n。这也是牌的最初顺序。一次洗牌是把序列变为n+1,1,n+2,2,n+3,3,n+4,4..2n,n。可以证明,对于任意自然数n,都可以在经过m 次洗牌后第一次重新得到初始的顺序。编程对于输入的自然数n,求出m 的值。
输入格式
第一行一个整数n,表示有2n 张牌。
输出格式
一个整数,表示洗牌次数m。
样例输入
样例输入1:
4
样例输入2:
7
样例输出
样例输出1:
6
样例输出2:
4
提示
对于 n=4,牌的最初顺序是:1 2 3 4 5 6 7 8,经过6 次洗牌会再一次得到最初的顺序:
第 1 次洗牌得到的顺序:5 1 6 2 7 3 8 4
第 2 次洗牌得到的顺序:7 5 3 1 8 6 4 2
第 3 次洗牌得到的顺序:8 7 6 5 4 3 2 1
第 4 次洗牌得到的顺序:4 8 3 7 2 6 1 5
第 5 次洗牌得到的顺序:2 4 6 8 1 3 5 7
第 6 次洗牌得到的顺序:1 2 3 4 5 6 7 8
【数据范围】
40%的数据满足:0<n<=1,000
70%的数据满足: 0<n<=10,000
100%的数据满足:0<n<=1,000,000