当前位置:网站首页>Flipping game (enumeration)
Flipping game (enumeration)
2022-07-07 19:11:00 【Full stack programmer webmaster】
Hello everyone , I meet you again , I'm the king of the whole stack .
Flipping Game
time limit per test
1 second
memory limit per test
256 megabytes
input
standard input
output
standard output
Iahub got bored, so he invented a game to be played on paper.
He writes n integers a1, a2, …, an. Each of those integers can be either 0 or 1. He’s allowed to do exactly one move: he chooses two indices i and j (1 ≤ i ≤ j ≤ n) and flips all values ak for which their positions are in range [i, j] (that is i ≤ k ≤ j). Flip the value of x means to apply operation x = 1 – x.
The goal of the game is that after exactly one move to obtain the maximum number of ones. Write a program to solve the little game of Iahub.
Input
The first line of the input contains an integer n (1 ≤ n ≤ 100). In the second line of the input there are n integers: a1, a2, …, an. It is guaranteed that each of those n values is either 0 or 1.
Output
Print an integer — the maximal number of 1s that can be obtained after exactly one move.
Sample test(s)
Input
5
1 0 0 1 0Output
4Input
4
1 0 0 1Output
4Note
In the first case, flip the segment from 2 to 5 (i = 2, j = 5). That flip changes the sequence, it becomes: [1 1 1 0 1]. So, it contains four ones. There is no way to make the whole sequence equal to [1 1 1 1 1].
In the second case, flipping only the second and the third element (i = 2, j = 3) will turn all numbers into 1.
The question : Yes n card , Only 0 and 1, Ask at [i,j] Flip once within the range to make 1 The most .
Output 1 The maximum number of cards
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main()
{
int n,i,j,k,t;
int a[110];
int sum[2];
int cnt=0;
while(~scanf("%d",&n))
{
cnt=0;
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
if(a[i]==1)
cnt++;// At the beginning of recording 1 Number of cards
}
t=cnt;
if(cnt==n)
{
printf("%d\n",n-1);// Suppose it's all 1 Words You have to turn a card So the maximum number left is the total number -1
}
else
{
for(i=0; i<n; i++)
for(j=i; j<n; j++)
{
memset(sum,0,sizeof(sum));
for(k=i; k<=j; k++)
sum[a[k]]++;
if(sum[0]>sum[1])
{
if(cnt<t+sum[0]-sum[1])
{
cnt=t+sum[0]-sum[1];
}
}
}
printf("%d\n",cnt);
}
}
return 0;
}Publisher : Full stack programmer stack length , Reprint please indicate the source :https://javaforall.cn/116604.html Link to the original text :https://javaforall.cn
边栏推荐
- Redis cluster and expansion
- [Blue Bridge Cup training 100 questions] sort scratch from small to large. Blue Bridge Cup scratch competition special prediction programming question centralized training simulation exercise question
- Idea completely uninstalls installation and configuration notes
- 50亿,福建又诞生一只母基金
- Creative changes brought about by the yuan universe
- 链式二叉树的基本操作(C语言实现)
- 手把手教姐姐写消息队列
- 3.关于cookie
- Differences between rip and OSPF and configuration commands
- Static routing configuration
猜你喜欢
随机推荐
Differences between rip and OSPF and configuration commands
虚拟数字人里的生意经
来了!GaussDB(for Cassandra)新特性亮相
Short selling, overprinting and stock keeping, Oriental selection actually sold 2.66 million books in Tiktok in one month
Tapdata 的 2.0 版 ,开源的 Live Data Platform 现已发布
Redis cluster and expansion
Redis集群与扩展
How many times is PTA 1101 B than a
[information security laws and regulations] review
Static routing configuration
3. About cookies
ES6笔记一
Learn open62541 -- [67] add custom enum and display name
[tpm2.0 principle and Application guide] Chapter 9, 10 and 11
Flipping Game(枚举)
Policy mode - unity
【塔望方法论】塔望3W消费战略 - U&A研究法
单臂路由和三层交换的简单配置
Will low code help enterprises' digital transformation make programmers unemployed?
2022年推荐免费在线接收短信平台(国内、国外)
![[Tawang methodology] Tawang 3W consumption strategy - U & a research method](/img/63/a8c08ac6ec7d654159e5fc8b4423e4.png)






