hdu 4941 Magical Forest
来源:互联网 发布:网络棋牌机器人规律 编辑:程序博客网 时间:2024/05/16 11:30
hdu 4941 Magical Forest
题意就是有一片森林 组成是一些网格 在一些点上种果树 果树还有附加的能量值
一开始给出网格大小 以及多少棵果树 下面再给出果树的位置 以及相应的能量值
之后会有三种操作 交换行的操作 交换列的操作 求相应位置上果树的能量值
但是由于N M的上限太大 没办法通过数组的形式存储 因为K的值相对比较小 可以通过map离散化进行存储
进行交换行交换列操作时 交换map映射的值
代码比较好理解 离散化的处理 以及的map的应用 还得强化下
#include <cstdio>#include <iostream>#include <cstring>#include <cmath>#include <algorithm>#include <string.h>#include <string>#include <map>#define eps 1e-8#define op operator#define MOD 10009#define MAXN 100100#define FOR(i,a,b) for(int i=a;i<=b;i++)#define FOV(i,a,b) for(int i=a;i>=b;i--)#define REP(i,a,b) for(int i=a;i<b;i++)#define REV(i,a,b) for(int i=a-1;i>=b;i--)#define MEM(a,x) memset(a,x,sizeof a)#define ll __int64using namespace std;map <int,int> row;map <int,int> col;map <int,map<int,int> > mp;int main(){//freopen("ceshi.txt","r",stdin); int tc; scanf("%d",&tc); int cnt=1; while(tc--) { row.clear(); col.clear(); mp.clear(); int r=0,co=0; int n,m,k; scanf("%d%d%d",&n,&m,&k); int a,b,c; int x,y; for(int i=0;i<k;i++) { scanf("%d%d%d",&a,&b,&c); if(!row[a]) { row[a]=++r; x=row[a]; } else x=row[a]; if(!col[b]) { col[b]=++co; y=col[b]; } else y=col[b]; mp[x][y]=c; } scanf("%d",&k); printf("Case #%d:\n",cnt++); while(k--) { scanf("%d%d%d",&a,&b,&c); if(a==1) { int tmp=row[b]; row[b]=row[c]; row[c]=tmp; } else if(a==2) { int tmp=col[b]; col[b]=col[c]; col[c]=tmp; } else { printf("%d\n",mp[row[b]][col[c]]); } } } return 0;}
0 0
- HDU-4941-Magical Forest
- HDU 4941 Magical Forest
- hdu 4941 Magical Forest
- hdu 4941 Magical Forest
- HDU - 4941 Magical Forest
- hdu 4941 Magical Forest
- HDU 4941 Magical Forest
- hdu 4941 Magical Forest
- hdu 4941 Magical Forest map
- HDU 4941 Magical Forest 多校
- hdu 4941 Magical Forest (map)
- hdu 4941 Magical Forest(Map)
- hdu 4941 Magical Forest (map)
- hdu 4941 Magical Forest map
- hdu 4941 Magical Forest(hash映射)
- hdu 4941 Magical Forest (map容器)
- HDU 4941 Magical Forest 【离散化】【map】
- Hdu 4941 Magical Forest(map+离散化)
- sql防止注入攻击的方法
- HDU 4939 Stupid Tower Defense (DP)
- win7+ubuntu双系统安装方法
- 配置Apache虚拟主机
- 【安卓篇】Service类的onStartCommand与onStart方法介绍
- hdu 4941 Magical Forest
- 如何解决html5开发中常见的中文乱码问题
- HDU1385
- Android学习路线(十八)支持不同设备——支持不同的屏幕
- Python2.7环境下安装pydbg
- 设计模式之外观模式
- Android开发之ListView+EditText-要命的焦点和软键盘问题解决办法
- 大杀招之使用QEMU调试Linux内核代码
- Reverse Integer