首页 > 其他分享 >LOJ #6220. sum

LOJ #6220. sum

时间:2022-10-25 11:34:30浏览次数:99  
标签:前缀 和模 LOJ sum int 6220 倍数 余数


题目链接:​​传送门​

官方题解:
有一个结论:必有连续的一串数和为n的倍数
证明:先求个前缀和
若这个前缀和中有的倍数,则这个前缀即为答案
若这个前缀和中没有的倍数,即模~
由抽屉原理得,至少有两个前缀和模的余数相同,得证
所以,先求前缀和
再找前缀和模或两个前缀和模的余数相等

所以就是找这个余数相等的区间

#include <bits/stdc++.h>
#define

using namespace std;
typedef long long ll;
int n, l, r; ll a[A], b[A], sum[A], t[A];

int main(int argc, char const *argv[]) {
cin >> n;
for (int i = 1; i <= n; i++) scanf("%lld", &a[i]), b[i] = a[i];
for (int i = 1; i <= n; i++) {
sum[i] = (sum[i - 1] + a[i] % n) % n;
if (!t[sum[i]]) t[sum[i]] = i;
else {l = t[sum[i]] + 1; r = i; break;}
}
for (int i = l; i <= r; i++) printf("%lld %lld\n", i, b[i]);
}


标签:前缀,和模,LOJ,sum,int,6220,倍数,余数
From: https://blog.51cto.com/lyle/5794338

相关文章

  • LOJ #10202. 「一本通 6.2 练习 5」樱花
    题目链接:​​传送门​​​​别人的题解​​​不想写那么多latex了化完式子之后就是求的约数个数#include<bits/stdc++.h>#defineusingnamespacestd;typedeflonglong......
  • C2. Make Nonzero Sum (hard version)
    C2.MakeNonzeroSum(hardversion)timelimitpertest2secondsmemorylimitpertest256megabytesinputstandardinputoutputstandardoutputThisi......
  • C1. Make Nonzero Sum (easy version)
    C1.MakeNonzeroSum(easyversion)Thisistheeasyversionoftheproblem.Thedifferenceisthatinthisversionthearraycannotcontainzeros.Youcanma......
  • 4.5 Kafka Consumer API之多线程并发处理
    1.Consumer一对一消费Partition(1).简介这种类型是经典模式,每一个线程单独创建一个KafkaConsumer消费一个partition,用于保证线程安全。(2).代码示例publicclassKafkaCon......
  • Kafka Consumer指定时间戳位置消费消息
    KafkaConsumer指定时间戳位置消费消息若用户不想从最旧的或最早的offset位置开始消费,想指定某个时间戳位置开始消费,是否可行呢?答案:可行的用户给定时间戳,kafkaserve......
  • loj3053
    引言它还是来了。这题我尝试写过一次,寄了。然后开摆了。现在决定重新补一补这题。敬请收看:myee调长剖调到CSP还没有调出来的惨状!欢迎来看我什么时候补掉。当然也可......
  • 函数柯里化实现sum函数
    需求实现sum函数,使其可以传入不定长参数,以及不定次数调用//示例console.log(sum(1,2)(3)())//6console.log(sum(2,3,4,5)(1,2)(3)(4)())//23需求分析实现sum......
  • leetcode 15. 3Sum 三数之和(中等)
    一、题目大意给你一个整数数组nums,判断是否存在三元组[nums[i],nums[j],nums[k]]满足i!=j、i!=k且j!=k,同时还满足nums[i]+nums[j]+nums[k]==0。......
  • loj3885. 「eJOI2022」Bounded Spanning Tree
    草稿:非树边\(u,v,[l,r]\)把\(u,v\)路径上所有边上界与\(r-1\)取个\(\min\)。剩下的边左端点排序后贪心,每次取右端点最小的一个元素。开始只考虑树边。当前加入一......
  • LOJ #2351. 「JOI 2018 Final」毒蛇越狱
    题面传送门奇妙的看上去不能过的题目。首先有一个非常sb的暴力,大概就是枚举?的子集,然后统计,时间复杂度\(O(2^{cnt_1})\)单次。直接算没有优化空间,考虑子集容斥,先FWT预处......