HDU 4930 Fighting the Landlords (超级暴力+读懂题意)
来源:互联网 发布:淘宝网店装修教程视频 编辑:程序博客网 时间:2024/05/22 00:14
题目链接:HDU 4930 Fighting the Landlords
斗地主!!。不会玩这游戏,真是苦逼。题意其他都还好,就是要注意只要第一个回合1号玩家能压制2号玩家就算赢了(突破点)。
其他就分类暴力了,思路还是比较清晰的。
注意点:
1.对方炸弹,必输
2.一回合就出完牌,必胜
AC代码:
#include<stdio.h>#include<string.h>int vis1[30],vis2[30];int find(char s){if(s=='T')return 10;else if(s=='J')return 11;else if(s=='Q')return 12;else if(s=='K')return 13;else if(s=='A')return 14;else if(s=='2')return 15;else if(s=='X')return 16;else if(s=='Y')return 17;else if(s>='3' && s<='9')return s-'0';}int main(){int t,i,j;char s1[20],s2[20];int len1,len2;#ifdef ONLINE_JUDGE#elsefreopen("E:/ZJUNIT/ACM/test/ACMtest/1010.txt","r",stdin);#endifwhile(scanf("%d",&t)!=EOF){while(t--){memset(vis1,0,sizeof vis1);memset(vis2,0,sizeof vis2);scanf("%s",s1);scanf("%s",s2);//printf("%s\n",s1);//printf("%s\n",s2);len1=strlen(s1);for(i=0;i<len1;i++)vis1[find(s1[i])]++;len2=strlen(s2);for(i=0;i<len2;i++)vis2[find(s2[i])]++;int mark=0,count=0;//int a=0,b=0,c=0,d=0;int e=0,f=0,orz=0;if(vis1[16]!=0 && vis1[17]!=0)e++;if(vis2[16]!=0 && vis2[17]!=0)f++;for(i=0;i<20;i++){if(vis1[i]>0){if(vis1[i]==1)a++;if(vis1[i]==2)b++;if(vis1[i]==3)c++;if(vis1[i]==4)d++;}if(vis2[i]==4)orz++;}//王炸if(e==1){printf("Yes\n");continue;} //一次出完 a是1张牌。b是2张牌,c是3张牌,d是4张牌if(len1==1){printf("Yes\n");continue;}if(len1==2 && b==1){printf("Yes\n");continue;}if((len1==3 && c==1) || (len1==4 && c==1 && a==1) || (len1==5 && c==1 && b==1) || (len1==5 && c==1 && a==2)){printf("Yes\n");continue;}if((len1==4 && d==1) ||(len1==6 && d==1 && b==1) || (len1==6 && d==1 && a==2)){printf("Yes\n");continue;}if(f==1 || orz!=0)//对手有炸弹{printf("No\n");continue;}int max1=-1,max2=0;for(i=0;i<20;i++){if(vis1[i]>=1 && max1<i)max1=i;if(vis2[i]>=1 && max2<i)max2=i;}if(max1>=max2){printf("Yes\n");continue;}//2max1=-1,max2=0;for(i=0;i<20;i++){if(vis1[i]>=2 && max1<i)max1=i;if(vis2[i]>=2 && max2<i)max2=i;}if(max1>=max2){printf("Yes\n");continue;}//3max1=-1,max2=0;for(i=0;i<20;i++){if(vis1[i]>=3 && max1<i)max1=i;if(vis2[i]>=3 && max2<i)max2=i;}if(max1>=max2){printf("Yes\n");continue;}//4max1=-1,max2=0;for(i=0;i<20;i++) {if(vis1[i]>=4 && max1<i)max1=i;if(vis2[i]>=4 && max2<i)max2=i;}if(max1>=max2){printf("Yes\n");continue;}printf("No\n");}}return 0;}
1 0
- HDU 4930 Fighting the Landlords (超级暴力+读懂题意)
- hdu 4930 Fighting the Landlords (模拟)
- HDU 4930-Fighting the Landlords(模拟)
- hdu 4930 Fighting the Landlords(模拟)
- HDU 4930 Fighting the Landlords(暴力枚举+模拟)
- hdu 4930 Fighting the Landlords
- hdu 4930 Fighting the Landlords
- Fighting the Landlords HDU - 4930
- HDU 4930 Fighting the Landlords(扯淡模拟题)
- hdu 4930 Fighting the Landlords(多校6 1010)
- hdu 4930 Fighting the Landlords(模拟)
- HDU 4930 Fighting the Landlords 模拟
- Hdu 4930 Fighting the Landlords 简单模拟
- hdu 4930 Fighting the Landlords (模拟)
- HDU 4930 Fighting the Landlords 模拟
- HDU 4930 : Fighting the Landlords(模拟)
- HDU-4930 Fighting the Landlords 多校训练赛斗地主
- HDU 4930 Fighting the Landlords 多校第六场
- 兼容各个浏览器的H.264播放: H.264+HTML5+FLOWPLAYER+WOWZA+RMTP
- 自定义的tableView 索引
- HDOJ 4862 Jump(最小费用最大流)
- Galileo新版SD卡系统无法启动问题研究 [精华]
- flash builder为类添加注释
- HDU 4930 Fighting the Landlords (超级暴力+读懂题意)
- Validate File Format
- Oracle数据库用户删除
- John carmark 访谈原文
- chrome模拟手机访问网站
- iOS的完整学习路线图
- 正则表达式提取img的src
- 如何推广微信公众号(快速增加粉丝数量)?
- Linux多线程调试之 利器Valgrind之helgrind