hdu 1528-Card Game Cheater(贪心算法)
创始人
2024-03-22 19:56:09
0

题意不讲,怕说不清,自己一点点看吧。

思路是贪心,将每个人的牌按从小到大或(从大到小),我是从小到大排的,

然后每次从第二摞排中找比第一摞排的那张大且相差最小的就可以了,每次找到就sum++;

最后sum值就是最优的(贪心思想)。

  1 #include2 #include3 #include4 #include5 #include6 #include7 int f(const void*p,const void*q);8 typedef struct pp9 {10     int x;11     int y;12 } ss;13 int main(void)14 {15     int n,i,j,k,p,q;16     char a[100];17     char b[100];18     ss kk[100];19     ss qq[100];20     scanf("%d",&k);21     while(k--)22     {23         scanf("%d ",&n);24         gets(a);25         gets(b);26         int uu=0;27         for(i=0; a[i]!='\0'; i++)28         {29             if(i%3==0)30             {31                 if(a[i]=='T')32                 {33                     kk[uu].x=10;34 35                 }36                 else  if(a[i]=='J')37                 {38                     kk[uu].x=11;39                 }40                 else  if(a[i]=='Q')41                 {42                     kk[uu].x=12;43                 }44                 else  if(a[i]=='K')45                 {46                     kk[uu].x=13;47                 }48                 else if(a[i]=='A')49                 {50                     kk[uu].x=14;51                 }52                 else kk[uu].x=a[i]-'0';53 54             }55           if((i-1)%3==0&&a[i]!='S')56             {57                 kk[uu].y=a[i]-'A';58                 uu++;59             }60             if((i-1)%3==0&&a[i]=='S')61             {62                  kk[uu].y=6;63                 uu++;64             }65 66         }67         uu=0;68         for(i=0; b[i]!='\0'; i++)69         {70             if(i%3==0)71             {72                 if(b[i]=='T')73                 {74                     qq[uu].x=10;75 76                 }77                 else  if(b[i]=='J')78                 {79                     qq[uu].x=11;80                 }81                 else  if(b[i]=='Q')82                 {83                     qq[uu].x=12;84                 }85                 else  if(b[i]=='K')86                 {87                     qq[uu].x=13;88                 }89                 else if(b[i]=='A')90                 {91                     qq[uu].x=14;92                 }93                 else qq[uu].x=b[i]-'0';94 95             }96             if((i-1)%3==0&&b[i]!='S')97             {98                 qq[uu].y=b[i]-'A';99                 uu++;
100             }
101             if((i-1)%3==0&&b[i]=='S')
102             {
103                  qq[uu].y=6;
104                 uu++;
105             }
106         }
107         qsort(qq,n,sizeof(ss),f);
108         qsort(kk,n,sizeof(ss),f);
109         int x,y;
110         x=0;
111         int s=0;
112         for(j=0; jkk[j].x)
117                 {
118                     x=p+1;
119                     s++;
120                     break;
121                 }
122                 else if(qq[p].x==kk[j].x)
123                 {
124                     if(qq[p].y>kk[j].y)
125                     {
126                         x=p+1;
127                         s++;
128                         break;
129                     }
130                 }
131             }
132         }
133         printf("%d\n",s);
134 
135     }
136     return 0;
137 
138 }
139 int f(const void*p,const void*q)
140 {
141     ss*w=(ss*)p;
142     ss*ww=(ss*)q;
143     if(w->x==ww->x)//如果前面的大小相同,就按后面的从小到大排
144     {
145         return w->y-ww->y;
146     }
147     else return w->x-ww->x;
148 }

相关内容

热门资讯

“黑马”县的“金”点子 转自:中国银行保险报网□崔艳丽 本报记者 章丽铃长久以来,安徽省滁州市凤阳县因“朱元璋故里”“小岗村...
匠心守护绿茵烽火 智慧赋能城市...   初夏的江苏,绿茵场上烽火正燃。  由江苏省体育局与江苏省各设区市政府联合主办的江苏省城市足球联赛...
半月4家未盈利企业IPO获受理... 导读:虽然科创板、创业板已经开始受理未盈利企业IPO,但对于多数未盈利企业而言,港交所上市的可能性仍...
求一些恋爱养成游戏 求一些恋爱养成游戏翼之梦论坛知道吧?进去注册个号,有一个PC中文版的版块,进去什么都有。这个游戏不到...
为什么山上有老虎? 为什么山上有老虎?因为山上比较便于躲藏,也有各种小动物,是比较适合此类猛兽生活的环境
<<济南的冬天&g... <<济南的冬天>>板书设计有谁可以告诉我的板书设计在哪里可以找到?知到的朋友们请回答我好吗? 济...
带丈的四字成语 带丈的四字成语 火冒三丈软红十丈日落千磨颂迹丈尺水丈波百丈竿头食必方丈巾帼丈夫女中丈夫食前方丈白...
淮南:共同切磋比拼 技能大赛展... (转自:淮南日报)共同切磋比拼 技能大赛展风采“各位评委老师好,我们本次的参赛主题叫做《檐角飞云处 ...
幸福从天而降电视剧结局 幸福从天而降电视剧结局  1、《幸福从天而降》结局:天蓝用自己的经历告诫天晴,终于让天判孝晴打消了离...
51比50,副总统万斯投下关键... 转自:中安在线当地时间7月1日,美国国会参议院通过全面减税和支出法案,并提交众议院。美国参议院当天上...