记录编号 485468 评测结果 AAAAAAAAAA
题目名称 [SDOI 2012 DAY2]集合 最终得分 100
用户昵称 GravatarShirry 是否通过 通过
代码语言 C++ 运行时间 1.061 s
提交时间 2018-01-31 15:42:37 内存使用 6.34 MiB
显示代码纯文本
#include<cstdio>
#include<cstring>
#include<algorithm>
#define inf (int)1e9
using namespace std;
const int maxn=500010;
int n,m,d,q,ans,b[maxn];
char s[20];
struct poi{int u,v,w;}p[maxn];
bool operator < (poi x,poi y){return x.w<y.w;}
int ask(int x,int y){
	for(int i=1;i<=m;i++){
		if(b[p[i].u]==x&&b[p[i].v]==y)return p[i].w;
		if(b[p[i].v]==x&&b[p[i].u]==y)return p[i].w;
	}
	return inf;
}
int main(){
	freopen("seta.in","r",stdin);
	freopen("seta.out","w",stdout);
	scanf("%d%d",&n,&m);
	for(int i=1;i<=m;i++)scanf("%d%d%d",&p[i].u,&p[i].v,&p[i].w);
	sort(p+1,p+1+m);
	scanf("%d",&q);
	while(q--){
		scanf("%s",s+1);
		if(s[1]=='A'){
			ans=ask(s[4]-'A',s[5]-'A');
			if(ans==inf)printf("No Found!\n");
			else printf("%d\n",ans);
		}
		else{
			scanf("%d",&d);
			b[d]=s[5]-'A';
		}
	}
	return 0;
}