社区讨论

30分样例全过,求调

P15359「WYZOI R2」春运参与者 3已保存回复 5

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
5 条
当前快照
1 份
快照标识符
@mluply2k
此快照首次捕获于
2026/02/20 17:50
2 周前
此快照最后确认于
2026/02/23 15:40
2 周前
查看原帖
比赛时的代码,调了一个多小时只过了样例(可能是蒙的死亡回放 代码如下:
CPP
#include <bits/stdc++.h>
using namespace std;
#define ll long long 
ll d,n,m,t,x=0;
int a[3050];
void ch(){
	int p=a[n-1];
    for (int i=n-1;i>0;i--) a[i]=a[i-1]; 
    a[0]=p;
	}
ll _lcm(ll a,ll b){
	return (a*b)/__gcd(a,b);
}
int main(){
	cin>>d>>n>>m>>t;
	for(int i=0;i<n;i++){
		cin>>a[i];
	}
	ll zq=_lcm(n,m);
	for(int i=0;i<zq;i++){
		if(i%m==0){
			ch();
		}
		x=(x%d+a[i%n]%d)%d;
		//cout<<(a[i%n])<<' ';
	}
	ll ans=0;
	ans=((t-1)/zq%d*x%d)%d;
	for(int i=0;i<=(t-1)%zq;i++){
		if(i%m==0){
			ch();
		}
		ans=(ans%d+a[i%n]%d)%d; 
	}
	cout<<ans%d;
	return 0;
}
谢谢!必关

回复

5 条回复,欢迎继续交流。

正在加载回复...