站外题求助
  • 板块学术版
  • 楼主zhengpie
  • 当前回复6
  • 已保存回复8
  • 发布时间2024/5/27 22:41
  • 上次更新2024/5/28 13:48:44
查看原帖
站外题求助
677078
zhengpie楼主2024/5/27 22:41

#include<bits/stdc++.h>
using namespace std;
#define int long long
#define ioimprove(); ios::sync_with_stdio(0);cin.tie(0);cout.tie(0);
#define FILE(x); freopen(x".in","r",stdin);freopen(x".out","w",stdout);
#pragma GCC optimize(1)
#pragma GCC optimize(2)
#pragma GCC optimize(3,"Ofast","inline")
int n,a[514514],m,sum[514514];
inline char qgetchar() 
{
	static char buf[1 << 14], *begin = buf, *end = buf;
	if(begin == end) 
	{
		begin = buf;
		end = buf + fread(buf,1,1 << 14,stdin);
	}
	return *begin++;
}
inline int qread()
{
    int f = 1,x = 0;char op;
    do
	{
		op = qgetchar();
		if(op == '-')f = -1;
	}
	while(op < '0' || op > '9');
    do
	{
		x = x * 10 + op - '0';
		op = qgetchar();
	}
	while(op >= '0' && op <= '9');
    return f * x;
}
signed main()
{
	ioimprove();
	//FILE("seq");
	n = qread();m = qread();
	for(int i = 1;i <= n;i++) a[i] = qread(),sum[i] = sum[i - 1] + a[i];
	for(int bbj = 1,l,r,p;bbj <= m;bbj++)
	{
		l = qread();r = qread();p = qread();
		if(r - l >= p) 
		{
			cout<<"0\n";
			continue;
		}
		int minn = p;
		for(int len = 1;len <= r - l + 1;len++)
		{
			for(int i = l;i + len - 1 <= r;i++)
			{
				int j = i + len - 1;
				minn = min(minn,(sum[j] - sum[i - 1]) % p);
				if(!minn) break;
			}
			if(!minn) break;
		}
		cout<<minn<<"\n";
	}
	
	return 0;
}

这份代码不知道为啥只有 9090 分,(已吸氧)

萌新求助!

2024/5/27 22:41
加载中...