首页 > 代码库 > hdu 4941 stl的map<node,int>用法
hdu 4941 stl的map<node,int>用法
#include<iostream> #include<cstdio> #include<cstring> #include<map> using namespace std; typedef struct node{ int x,y; bool operator<(const node &b)const { if(x==b.x) return y<b.y; else return x<b.x; } }node; int main() { map<node,int>ma; map<int,int>f,ff; node e; int n,m,i,j,k,t,id,idd,ss,s,num=0; scanf("%d",&t); while(t--) { scanf("%d%d%d",&n,&m,&k); id=0;idd=0; while(k--) { scanf("%d%d%d",&i,&j,&s); if(f[i]==0) f[i]=++id; if(ff[j]==0) ff[j]=++idd; e.x=f[i]; e.y=ff[j]; ma[e]=s; } scanf("%d",&j); printf("Case #%d:\n",++num); while(j--) { scanf("%d",&i); if(i==1) { scanf("%d%d",&id,&idd); ss=f[id]; f[id]=f[idd]; f[idd]=ss; } if(i==2) { scanf("%d%d",&id,&idd); ss=ff[id]; ff[id]=ff[idd]; ff[idd]=ss; } if(i==3) { scanf("%d%d",&id,&idd); e.x=f[id]; e.y=ff[idd]; // printf("%d %d\n",f[id],ff[idd]); printf("%d\n",ma[e]); } } } return 0; }
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。