洛谷B4038 [GESP202409 三级] 平衡序列 题解
前言
当我以一种十分激动的心情参加了GESP的2024-9的三级考试时。
打开了此题,然后……自以为是的拿着暴力一顿乱写!然后TLE。
直到结束我还是没有想出来! (太菜了!!!)
以一种十分沮丧的心情走出了考场……
于是写了这篇题解…… (讲了这么多,还是太菜了!)
题目解析
- 需要输入一个长度为 \(n\) 的正整数序列 \(a\) 。
- 找到一个 \(i\) (\(1 \leq i < n\)) 使得
a[1]+a[2]+a[3]+…+a[i]==a[i+1]+a[i+2]+a[i+3]+…+a[n] - 本题单个测试点内包含多组测试数据! 所以,可能要用
memset()了。
解题思路
1、暴力!
我在考场就是这个方法!这里就不展开了。因为会 TLE
2、使用前缀和
前置知识
前缀和,顾名思义,指的是数组内存储的时当前元素与之前的所有元素的和。(很好理解对吧!?)
举个栗子!
点击查看实例代码
int n;
int a[20];
// 创建前缀和数组b
int b[20];
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i];
}
// for循环求出前缀和
for(int i=1;i<=n;i++){
b[i]=a[i]+b[i-1];
}
// 输出
for(int i=1;i<=n;i++){
cout<<b[i];
}
// 输入:
3
1 3 5
//输出:
1 4 9
好了,懂了前缀和,你就懂了这道题的做法!
真正的解题思路
现在,摆在面前的唯一难题便是如何快速求出 a[1]+a[2]+a[3]+…+a[i]和a[i+1]+a[i+2]+a[i+3]+…+a[n]
第一个很好求,在得到前缀和数组 \(b\) 后 b[i]里的内容便是第一个。
第二个,则需思考一下!其中b[n]里的内容可以被拆分为b[i]+a[i+1]+a[i+2]+a[i+3]+…+a[n]
所以!第二个就可以用b[n]-b[i]!
然后,与一些基本的输入输出结合,你得到了此题的完整代码!
CODE
点击查看完整代码
#include<bits/stdc++.h>
using namespace std;
int t;
int n;
int a[10005];
int b[10005];
int main(){
cin>>t;
while(t--){
cin>>n;
for(int i=1;i<=n;i++){
cin>>a[i];
}
for(int i=1;i<=n;i++){
b[i]=a[i]+b[i-1];
}
bool flag=true;
for(int i=1;i<=n;i++){
if(b[i]==b[n]-b[i]){
cout<<"Yes"<<endl;
flag=false;
break;
}
}
if(flag){
cout<<"No"<<endl;
}
}
return 0;
}
完结撒花!!
洛谷B4038 [GESP202409 三级] 平衡序列 题解的更多相关文章
- 【洛谷】P2880 [USACO07JAN]平衡的阵容Balanced Lineup(st表)
题目背景 题目描述: 每天,农夫 John 的N(1 <= N <= 50,000)头牛总是按同一序列排队. 有一天, John 决定让一些牛们玩一场飞盘比赛. 他准备找一群在对列中为置连 ...
- 洛谷P1854 花店橱窗布置 分析+题解代码
洛谷P1854 花店橱窗布置 分析+题解代码 蒟蒻的第一道提高+/省选-,纪念一下. 题目描述: 某花店现有F束花,每一束花的品种都不一样,同时至少有同样数量的花瓶,被按顺序摆成一行,花瓶的位置是固定 ...
- HAOI2006 (洛谷P2341)受欢迎的牛 题解
HAOI2006 (洛谷P2341)受欢迎的牛 题解 题目描述 友情链接原题 每头奶牛都梦想成为牛棚里的明星.被所有奶牛喜欢的奶牛就是一头明星奶牛.所有奶 牛都是自恋狂,每头奶牛总是喜欢自己的.奶牛之 ...
- 洛谷P3412 仓鼠找$Sugar\ II$题解(期望+统计论?)
洛谷P3412 仓鼠找\(Sugar\ II\)题解(期望+统计论?) 标签:题解 阅读体验:https://zybuluo.com/Junlier/note/1327573 原题链接:洛谷P3412 ...
- 洛谷P3502 [POI2010]CHO-Hamsters感想及题解(图论+字符串+矩阵加速$dp\&Floyd$)
洛谷P3502 [POI2010]CHO-Hamsters感想及题解(图论+字符串+矩阵加速\(dp\&Floyd\)) 标签:题解 阅读体验:https://zybuluo.com/Junl ...
- BZOJ3675 & 洛谷3648 & UOJ104:[Apio2014]序列分割——题解
https://www.lydsy.com/JudgeOnline/problem.php?id=3675 https://www.luogu.org/problemnew/show/P3648 ht ...
- 洛谷P2501 bzoj1049 [HAOI2006]数字序列
题目链接 bzoj 洛谷 题解 第一问: 假如 \(i < j\) 如果 \(j\)能从\(i\)转移过来 显然中间空隙必须足够 例如:\(50\) \(53\) \(53\) \(52\) 就 ...
- BZOJ4946 & 洛谷3826 & UOJ318:[NOI2017]蔬菜——题解
https://www.lydsy.com/JudgeOnline/problem.php?id=4946 https://www.luogu.org/problemnew/show/P3826 ht ...
- 洛谷1578:[WC2002]奶牛浴场——题解
https://www.luogu.org/problemnew/show/P1578#sub 由于John建造了牛场围栏,激起了奶牛的愤怒,奶牛的产奶量急剧减少.为了讨好奶牛,John决定在牛场中建 ...
- 【洛谷3648/BZOJ3675】[APIO2014]序列分割(斜率优化DP)
题目: 洛谷3648 注:这道题洛谷3648有SPJ,要求输出方案.BZOJ3675数据组数较多但不要求输出方案. 分析: 这可能是我第三次重学斜率优化了--好菜啊 这道题首先一看就是个DP.稍微推一 ...
随机推荐
- Web API 控制器的行为和操作方法的属性
ControllerBase 类 Web API 包含一个或多个派生自 ControllerBase 的控制器类. Web API 项目模板提供了一个入门版控制器 [ApiController] [R ...
- R数据分析:冲击流图与热图的做法以及多图布局
今天看了一篇新冠肺炎相关后遗症的文章,主要探讨新冠住院病人一年后的后遗症情况,文章的统计分析很简单,不过结果展示中的两个图我觉的大家可以学一学,原文如下 Rivera-Izquierdo, M., L ...
- shell 读取文件内容到数组
在 shell 脚本中,可以使用下面的语法来读取文件内容并将其存储到数组中: bash 复制代码 array=() while read line; do array+=("$line& ...
- Qt音视频开发35-左右通道音量计算和音量不同范围值的转换
一.前言 视频文件一般会有两个声音通道及左右声道,值有时候一样有时候不一样,很多场景下我们需要对其分开计算不同的音量值,在QAudioFormat中可以获取具体有几个通道,如果是一个通道,则左右通道值 ...
- 安装Visual Studio2015后找不到C++项目模板解决办法
安装Visual Studio2015后找不到C++项目模板解决办法: 方法1:您可以通过修改Visual Studio来完成此操作,并且可以使用以下步骤完成此操作:1.转到"添加或删除程序 ...
- [LC793]阶乘函数后 K 个零
题目描述 f(x) 是 x! 末尾是 0 的数量.(回想一下 x! = 1 * 2 * 3 * ... * x,且 0! = 1 ) 例如, f(3) = 0 ,因为 3! = 6 的末尾没有 0 : ...
- PS2021、色环插件Coolorus下载+色环无法拖动问题和没有压感问题的解决
PS2021+色环插件Coolorus+色环无法拖动问题解决+没有压感问题解决 1.资源下载链接 PS各版本下载: 感谢微博@vposy大佬无私奉献提供的各版本ADOBE软件直装破解: 百度网盘: p ...
- 「V 曲闲谈」《万物与我同归于寂》——终与始
死亡, 胃酸逆流 失去最初模样 开端与结局颠倒 脉搏也摇晃 于强烈的动机下选定这首歌,但构思时又发觉,一个十六岁的青年,似乎在这个艰涩的哲学问题上难以开口. 那么先来说说我的动机.为什么我 ...
- 搭建springboot web系统
一.集成spring-data-jpa 我在实际项目中使用mybaties居多,但是个人喜欢spring-data-jpa,在 1. 添加依赖 <!-- 数据源依赖 --> <dep ...
- 通过WebView2获取HTTP-only cookie
通过WebView2获取HTTP-only cookie可以使用`WebView2.CookieManager`类的方法.以下是一个示例代码,演示如何获取HTTP-only cookie: using ...