本文主要是介绍找座位,用 C 编码,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
题目描述
在一个大型体育场内举办了一场大型活动,由于疫情防控的需要,要求每位观众的必须间隔至少一个空位才允许落座。现在给出一排观众座位分布图,座位中存在已落座的观众,请计算出,在不移动现有观众座位的情况下,最多还能坐下多少名观众。
输入描述
一个数组,用来标识某一排座位中,每个座位是否已经坐人。0 表示该座位没有坐人,1 表示该座位已经坐人。1<=数组长度<=10000
输出描述
整数,在不移动现有观众座位的情况下,最多还能坐下多少名观众。
示例一
输入
10001
输出
1
示例二
输入
0101
输出
0
代码
#include<stdio.h>
#include<string.h>
int main(){char str[100];scanf("%s",str);int cnt=0;//第一个0,然后后面一个也是0, 第一个0处可以写1;前边是0 后边也是0;在最后一个0 且前面是0 for(int i=0;str[i]!='\0';++i){if(str[i]=='0'){if((i==0 && i+1 < strlen(str) && str[i+1]=='0')||(str[i-1]=='0' && i+1<strlen(str) && str[i+1]=='0')||(i==strlen(str)-1 && str[i-1]=='0')){str[i]='1';cnt++;}}}printf("%d\n",cnt);return 0;
}
这篇关于找座位,用 C 编码的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!