首页
比赛
tracker
题库
课程
竞赛讨论区
登录
/
注册
去牛客
首页
>
操作数组
8条解析
开通博客写题解
AliLexiWalker
发表于 2026-05-04 00:07:33
若两数组总和不等则无法实现后续操作;否则最少操作数为所有需增加位置的差值之和:。 void solve(){ int n;cin>>n; vll a(n),b(n); for(int i=0;i<n;++i)cin>>a[i]; for(
展开全文
憨憨的竹林
发表于 2026-05-04 00:12:57
很简单的题目呀 首先我们要保证两个数组的元素之和是相等的,否则移来移去也只是在做无用功。 确保这个前提之后,我们每次操作都同时选中一个 与一个 去进行操作即可,所以最后操作数量实际上就是 了 代码如下: #include <bits/stdc++.h> using namespac
展开全文
lotusor
发表于 2026-05-04 00:47:23
操作都是一加一减,所以初始值一定要相同,加多少减多少只需要记住总共需要加或减多少就行了 n = int(input()) a = list(map(int,input().split())) b = list(map(int,input().split())) if sum(a) != sum(b)
展开全文
BeauWill
发表于 2026-05-04 02:35:14
Modern Cpp #include <iostream> #include <vector> #include <numeric> using i64 = long long; int main() { std::ios::sync_with_stdi
展开全文
此在Dasein
发表于 2026-05-04 01:43:44
1. 问题分析 该问题的本质是一个带有守恒约束的线性变换问题。 操作特性:每次操作选择两个不同的索引 ,使 减 1,同时 加 1。这一操作在数学上等价于在数组元素之间进行“单位增量的转移”。 和的不变性(Invariant):无论执行多少次操作,数组 的元素总和 始终保持不变。 目标状态:
展开全文
腌萝卜干
发表于 2026-05-04 14:55:19
简单题 #include <bits/stdc++.h> #define x first #define y second #define all(x) x.begin(), x.end() #define vec1(T, name, n, val) vector<T> n
展开全文
想去杭州的沸羊羊在刷代码
发表于 2026-05-04 20:06:34
#include <bits/stdc++.h> using namespace std; #define int long long signed main() { int n; cin>>n; int sum=0; int a[n+2]; int b[n+2];
展开全文
白子伍
发表于 2026-05-04 22:02:56
import sys # for line in sys.stdin: # a = line.split() # print(int(a[0]) + int(a[1])) def solve(): input = sys.stdin.readline n = in
展开全文
查看本题
查看本题讨论
相关比赛
56681-牛客小白月赛72内测
进入比赛
56825-牛客小白月赛72
进入比赛
58273-第14周
进入比赛
58464-未来图灵算法协会第四次训练赛
进入比赛
60272-第十届河南理工大学算法竞赛-测试赛
进入比赛
等你来战
查看全部
2026年北京印刷学院程序设计竞赛(同步赛)
报名截止时间:2026-05-20 22:00
牛客练习赛153
报名截止时间:2026-05-22 21:30
2026年中南民族大学程序设计竞赛决赛(同步赛)
报名截止时间:2026-05-23 17:00
"壹零杯"第三届西华师范大学程序设计竞赛(同步赛)
报名截止时间:2026-05-24 14:30
牛客周赛 Round 145
报名截止时间:2026-05-24 21:00
牛客小白月赛133
报名截止时间:2026-05-29 21:00
第二十三届宁波大学程序设计竞赛(同步赛)
报名截止时间:2026-05-30 17:30
牛客2026年儿童节比赛
报名截止时间:2026-06-01 21:00
汤圆头 Round 1
报名截止时间:2026-07-06 22:00
2026牛客暑期多校训练营1
报名截止时间:2026-07-17 17:00
扫描二维码,关注牛客
意见反馈
下载牛客APP,随时随地刷题