RE求调
查看原帖
RE求调
1369277
NIUNIUcow楼主2024/11/6 22:00
#include <bits/stdc++.h>
using namespace std;

int t, n, k, q, ans[101][20001], len[10001];
vector<int> s[10001];

int main(){
	cin >> t;
	
	for(int i=1;i<=t;i++){
		memset(ans, -1, sizeof(ans));
		ans[0][1] = 0;
		cin >> n >> k >> q;
		
		for(int i=1;i<=n;i++){
			cin >> len[i];
			s[i].clear();
			
			for(int j=1;j<=len[i];j++){
				int num;
				cin >> num;
				s[i].push_back(num);
			}
		}
		
		for(int r=1;r<=100;r++){
			for(int i=1;i<=n;i++){
				int start = -1;
				
				for(int j=0;j<len[i];j++){
					if(j-start < k && start != -1){
						if(ans[r][s[i][j]] == -1)ans[r][s[i][j]] = i;
						else ans[r][s[i][j]] = 0;
					}
					
					if(ans[r-1][s[i][j]] != -1 && ans[r-1][s[i][j]] != i)start = j;
				}
			}
		}
		
		for(int i=1;i<=q;i++){
			int r, c;
			cin >> r >> c;
			if(ans[r][c] == -1)cout << 0 << endl;
			else cout << 1 << endl;
		}
	}
	
	return 0;
} 
2024/11/6 22:00
加载中...