UVa 10881 - Piotr's Ants - 水题
来源:互联网 发布:re文件管理器源码 编辑:程序博客网 时间:2024/06/03 21:47
题目描述:lrj后白书第一章第五道例题
题目分析:1)从宏观上看,蚂蚁碰撞并没有影响它们的爬行; 2) 蚂蚁的相对位置是不会变的。所以只需要处理初始状态和最后的状态即可。
下面是代码:
#include <cstdio>#include <string>#include <algorithm>using namespace std;const int maxn = 10100;struct ant {int id;int dir;int pos;ant() {}ant(int a,int b,int c): id(a),pos(b),dir(c) {}} before[maxn],after[maxn];int T;int l,t,n;int order[maxn];char direction[][10] = {"L","Turning","R"};bool cmp(ant a,ant b){return a.pos < b.pos;}int main(){int cas = 0;scanf("%d",&T);while(T--){scanf("%d%d%d",&l,&t,&n);for(int i = 0; i < n; i++){int pos,dir;char ch;scanf("%d %c",&pos,&ch);dir = (ch == 'L') ? -1 : 1;before[i] = ant(i,pos,dir);after[i] = ant(0,pos+dir*t,dir);}//for(int i = 0; i < n; i++) printf("%d ",before[i].pos); printf("\n");//for(int i = 0; i < n; i++) printf("%d ",after[i].pos); printf("\n");sort(before,before+n,cmp);for(int i = 0; i < n; i++) order[before[i].id] = i;sort(after,after+n,cmp);for(int i = 0; i < n-1; i++)if(after[i].pos == after[i+1].pos) after[i].dir = after[i+1].dir = 0;printf("Case #%d:\n",++cas);for(int i = 0; i < n; i++){int id = order[i];if(after[id].pos > l || after[id].pos < 0) printf("Fell off\n");else printf("%d %s\n",after[id].pos,direction[after[id].dir+1]);}printf("\n");}return 0;}
0 0
- UVa 10881 - Piotr's Ants - 水题
- UVa - 10881 - Piotr's Ants
- uva 10881 - Piotr's Ants
- Uva-10881-Piotr's Ants
- uva 10881 - Piotr's Ants
- UVa 10881 Piotr's Ants
- UVA 10881 Piotr's Ants
- Piotr's ants UVA 10881
- UVa 10881 - Piotr's Ants
- UVa 10881 Piotr's Ants
- UVA - 10881 Piotr's Ants
- uva 10881 Piotr's Ants
- UVA - 10881 Piotr's Ants
- UVa 10881 - Piotr's Ants
- UVa 10881 - Piotr's Ants
- Uva 10881 - Piotr's Ants
- UVA 10881 Piotr's Ants
- UVA 10881 - Piotr's Ants
- nodejs与websocket的库socket.io的应用
- socket connect 阻塞与非阻塞 .
- 如何在DOS下编译C文件
- 关于CSDN2013博客之星的一些看法
- android------(自动调节的进度条+评级测试)SeekBar和RatingBar
- UVa 10881 - Piotr's Ants - 水题
- HDU 2005
- Iptables下MSS数据调整模块TCPMSS使用
- android 界面跳转遇到的问题
- Ext.get()与Ext.fly()之区别
- nagios告警信息分析
- VC项目配置基础 (VC6.0 和VC2005)
- Visual Leak Detector for Visual C++
- cofs文件系统问题