编译错误
查看原帖
编译错误
291604
王茗仟楼主2022/11/16 16:51

为什么只给我一个黄色的编译错误,我很蒙


#include<bits/stdc++.h>
#define double long double
#define int long long
#define re register
#define in inline
#define max(a,b) ((a)>(b)?a:b)
#define min(a,b) ((a)<(b)?a:b)
#define ls x<<1
#define rs x<<1|1
using namespace std;
const int N=2e5+10;
const int M=2e6+10;
const int INF=0x3f3f3f3f3f;
const int mod=988244353;
const int Mod=10007;
const double eps=1e-5;
in int read(){
	re int x=0,f=0;re char c=getchar();
	while(!isdigit(c)) f|=(c=='-'),c=getchar();
	while(isdigit(c))  x=(x<<3)+(x<<1)+c-'0',c=getchar();
	return f?-x:x;
}
in void write(re int x){
	if(x<0) putchar('-'),x=-x;
	if(x>9) write(x/10);
	putchar(x%10+'0');
}

int c[2001][2001]={{1},{1,1},{1,2,1}};
int x[N],y[N],f[2003][2001];


int t,k;
int mxx,mxy;
int mnx=INF,mny=INF;
signed main(){
	t=read();k=read();
	
	for(int i=1;i<=t;i++){
		x[i]=read();y[i]=read();
		mxx=max(mxx,x[i]);
		mxy=max(mxy,y[i]);
	}
	for(int i=2;i<=mxx;i++){
		c[i][0]=1;
		for(int j=1;j<=mxy;j++){
			c[i][j]=c[i-1][j-1]+c[i-1][j];
			c[i][j]%=k;
			if(c[i][j]==0){
				f[i][j]=f[i][j-1]+1;
			}
			else{
				f[i][j]=f[i][j-1];
			}
		}
	}
	
	
	for(int i=1;i<=t;i++){
		int ans=0;
		for(int j=2;j<=x[i];j++){
			ans+=f[j][min(j,y[i])];
		}
		write(ans);putchar('\n');
	}
	
	return 0;
}
2022/11/16 16:51
加载中...