codeforce698A vacation

题目简介

vasaya在假期想学习

给了n天的假期,并且给出每天假期的种类

0代表不能运动不能比赛

1代表不能运动能比赛

2代表能运动不能比赛

3代表能运动能比赛

运动和比赛都不能连续,问他最少休息几天

思路

创建一个数组去记录假期的状态

判断第一天状态,0的时候休息加一天

如果当天状态为三,本天不休,如果前一天是1的话将本天赋值为2,前一天是2的话今天赋值为1

2前面是2休一天,1前面是1休一天

输出

ac代码

#include <stdio.h>
int main()
{
int num[100];
int n,i,tongji;
while(scanf("%d",&n)!=EOF)
{
tongji=0;
i=0;
while(i<n)
{
scanf("%d",&num[i]);
i++;
}
//数组遍历输入
if(num[0]==0)
{
tongji++;
}
for(i=1;i<n;i++)
{
if(num[i]==0)
{
tongji++;
}
if(num[i]==1)
{
if(num[i-1]==1)
{
tongji++;
num[i]=0;
}
}
if(num[i]==2)
{
if(num[i-1]==2)
{
tongji++;
num[i]=0;
}
}
if(num[i]==3)
{
if(num[i-1]==1)
{
num[i]=2;
}
if(num[i-1]==2)
{
num[i]=1;
}
}
}
printf("%d\n",tongji);
}
return 0;
}


阅读更多
想对作者说点什么? 我来说一句

vacation

2013年05月29日 13.51MB 下载

没有更多推荐了,返回首页

不良信息举报

codeforce698A vacation

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭