记录编号 585215 评测结果 AAAAAAAAAA
题目名称 [NOIP 2012]寻宝 最终得分 100
用户昵称 Gravatar城南花已开 是否通过 通过
代码语言 C++ 运行时间 0.685 s
提交时间 2023-11-29 15:15:09 内存使用 7.30 MiB
显示代码纯文本
# include <iostream>
# include <cstdio>
using namespace std;
int main(){
	int n,m,house2[10001][100],start,l[10001]={0},ans=0,p=0;
	bool house1[10001][100];
	freopen("treasures.in","r",stdin);
	freopen("treasures.out","w",stdout);
	scanf("%d %d",&n,&m);
	for(int i=1;i<=n;i++){
		for(int j=0;j<m;j++){
			scanf("%d %d",&house1[i][j],&house2[i][j]);
			if(house1[i][j]==1){
				l[i]++;
			}
		}
	}
	scanf("%d",&start);
	for(int i=1;i<=n;i++){
		ans+=house2[i][start]%20123;
		ans%=20123;
		house2[i][start]%=l[i];
		if(house2[i][start]==0){
			house2[i][start]=l[i];
		}
		p=0;
		for(int j=start;j<=start+m-1;j++){
			if(house1[i][j%m]==1){
				p++;
			}
			if(p==house2[i][start]){
				start=j%m;
				break;
			}
		}
	}
	ans%=20123;
	printf("%d\n",ans);
	return 0;
}