进行了去重且行末没有空格,样例通过,但依旧WA
查看原帖
进行了去重且行末没有空格,样例通过,但依旧WA
209758
AdGats楼主2021/6/14 16:21

代码如下:

#include<bits/stdc++.h>
using namespace std;
const int N=2e3+5;
//unordered_
map<string,priority_queue<int> >p;
int l,n,ans;
int main(){
	scanf("%d",&l);
	for(int i=1;i<=l;i++){
		int n,ll=1;
		scanf("%d",&n);
		string s;
		getline(cin,s);
		while(n--){
			int rr=s.find((char)(32),ll);
			string s2=s.substr(ll,rr-ll);
			ll=rr+1;
			p[s2].push(-i);
		}
	}
	scanf("%d",&n);
	for(int i=1;i<=n;i++){
		string s;
		cin>>s;
		while(!p[s].empty()){
			int ans=p[s].top();
			printf("%d",-ans);
			p[s].pop();
			while(ans==p[s].top()&&(!p[s].empty()))	p[s].pop(); 
			if(!p[s].empty())	putchar(' ');
		}
		puts("");
	}
	return 0;
}

2021/6/14 16:21
加载中...