D. Add to Neighbour and Remove

阅读: 评论:0

D. Add to Neighbour and Remove

D. Add to Neighbour and Remove

传送门

题 意 : 给 一 个 序 列 , 你 可 以 将 a i 加 到 a i + 1 或 者 a i − 1 , 操 作 后 a i 消 失 , 即 题意:给一个序列,你可以将a_i加到a_{i+1}或者a_{i-1},操作后a_i消失,即 题意:给一个序列,你可以将ai​加到ai+1​或者ai−1​,操作后ai​消失,即
序 列 长 度 减 一 , 问 最 少 操 作 次 数 使 得 每 一 个 元 素 都 相 同 序列长度减一,问最少操作次数使得每一个元素都相同 序列长度减一,问最少操作次数使得每一个元素都相同
分 析 : 数 据 是 真 的 水 , 放 心 暴 力 吧 。 对 于 这 个 序 列 , 我 们 可 以 预 处 理 前 缀 和 , 然 后 我 们 分析:数据是真的水,放心暴力吧。对于这个序列,我们可以预处理前缀和,然后我们 分析:数据是真的水,放心暴力吧。对于这个序列,我们可以预处理前缀和,然后我们
直 接 枚 举 每 一 部 分 前 缀 和 , 看 看 结 果 若 干 次 操 作 后 序 列 的 共 同 元 素 是 那 一 部 分 的 前 缀 和 。 直接枚举每一部分前缀和,看看结果若干次操作后序列的共同元素是那一部分的前缀和。 直接枚举每一部分前缀和,看看结果若干次操作后序列的共同元素是那一部分的前缀和。

#include <set>
#include <map>
#include <list>
#include <cmath>
#include <stack>
#include <queue>
#include <string>
#include <bitset>
#include <vector>
#include<cstring>
#include <stdio.h>
#include <iostream>
#include <algorithm>
/*
ios::sync_with_stdio(false);cin.tie(0);cout.tie(0);*/
#define INF 0x3f3f3f3f
using namespace std;
typedef long long ll;
typedef unsigned long long ull;
inline int read(){int s=0,w=1;char ch=getchar();while(ch<'0'||ch>'9'){if(ch=='-')w=-1;ch=getchar();}while(ch>='0'&&ch<='9') s=s*10+ch-'0',ch=getchar();return s*w;}
const int maxn = 1e5+5;
ll a[maxn],sum[maxn];
int main()
{int t=read();set<int>st;while (t--){int n=read();int flag=false;ll M=-INF;a[1]=read();sum[1]=a[1];for(int i=2;i<=n;i++){cin>>a[i],sum[i]=sum[i-1]+a[i];if(a[i]!=a[i-1]) flag=true;M=max(M,a[i]);}if(!flag) {puts("0");continue;}for(int i=1;i<=n;i++)for(int j=1;j<=i;j++)st.insert(sum[i]-sum[j-1]);int ans=INF;for(auto i:st){int tmp=i;if(tmp<M) continue;int Sum=0;int cnt=0;bool f=false;for(int j=1;j<=n;j++){if(Sum<tmp) Sum+=a[j];if(Sum==tmp) cnt++,Sum=0;else if(Sum>tmp) {f=true;break;}}if(f||Sum>0&&Sum<tmp) continue;ans=min(ans,n-cnt);}printf("%dn",ans);}return 0;
}

本文发布于:2024-02-04 11:44:34,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170706412555264.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:Add   Neighbour   Remove
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23