hdu 4941 stl的map<node,int>用法
2014-08-12 17:29
477 查看
#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; }
相关文章推荐
- hdu 4941 stl的map<node,int>用法
- map<int,int>::iterator it 的用法
- C++ STL <map> 用法简介
- stl--<map>的用法
- POJ 3253 Fence Repair (priority_queue的用法) ----- less<int> 和 greater<int>
- STL priority_queue<> 用法
- 11/7/8 STL 映射容器 map< K , T > 学习笔记
- 计算字符串中每种字符出现的次数[Dictionary<char,int>泛型集合用法]
- C++中map<int,vector<int>>的初始化和访问方法
- Babelfish (map 用法。<string, string>
- <STL介绍>--Queue用法
- STL<bitset>用法介绍
- map<string,int>
- Android中List与Map<String,Object>及SimpleAdapter用来存储数据并展示出来的联合用法
- STL中map的key能否用char *呢?当然可以! map<char *, char *>
- 入门计划->学用stl std::map<std::string, int>
- Map.Entry<K,V> 的简单用法
- #include<queue> STL 用法
- <img usemap="#Map">的用法
- Collections.sort()及map.Entry<>用法