比赛 |
20120224 |
评测结果 |
AAAAAATAAA |
题目名称 |
小球钟—时间与运动 |
最终得分 |
90 |
用户昵称 |
Makazeu |
运行时间 |
0.000 s |
代码语言 |
C++ |
内存使用 |
0.00 MiB |
提交时间 |
2012-02-25 12:23:29 |
显示代码纯文本
#include <cstdio>
#include <cstdlib>
#include <deque>
using namespace std;
const int MAXN=720;
typedef deque<int> Deque;
Deque Minute;
Deque Five;
Deque Hour;
Deque Bot;
int N;
int M=0;
bool check()
{
for(int i=0;i<N;i++)
{
if(Bot[i]!=i+1)
return false;
}
return true;
}
void Into3()
{
int tmp;
int tmp2;
tmp2=Hour.back();
Hour.pop_back();
for(int i=1;i<=11;i++)
{
tmp=Hour.back();
Hour.pop_back();
Bot.push_back(tmp);
}
Bot.push_back(tmp2);
}
void Into2()
{
int tmp;
tmp=Five.back();
Five.pop_back();
Hour.push_back(tmp);
for(int i=1;i<=11;i++)
{
tmp=Five.back();
Five.pop_back();
Bot.push_back(tmp);
}
}
void Into1()
{
int tmp;
tmp=Minute.back();
Minute.pop_back();
Five.push_back(tmp);
for(int i=1;i<=4;i++)
{
tmp=Minute.back();
Minute.pop_back();
Bot.push_back(tmp);
}
}
void work()
{
bool flag=false;
while(!flag)
{
M++;
int tmp;
for(int a=1;a<=12;a++)
{
for(int b=1;b<=12;b++)
{
for(int c=1;c<=5;c++)
{
tmp=Bot.front();
Bot.pop_front();
Minute.push_back(tmp);
}
Into1();
}
Into2();
}
Into3();
flag=check();
}
printf("%d\n",(M+1)/2);
}
int main()
{
freopen("xqz.in","r",stdin);
freopen("xqz.out","w",stdout);
scanf("%d\n",&N);
for(int i=1;i<=N;i++) Bot.push_back(i);
work();
return 0;
}