小张爱编程 2021-09-02 22:59 采纳率: 100%
浏览 236
已结题

求提供纸牌排序的思路!!

小诺诺喜欢玩纸牌比大小的游戏。现在有一副牌中的若干张纸牌,需要按牌面的数字从大到小的顺序排列,若数字大小相同则按花色从大到小(黑桃>红桃>梅花>方块)排列。牌面为A、J、Q、K分别用1、11、12、13表示;花色中的黑桃、红桃、梅花、方块分别用英文单词"spade"、"heart"、"club"、"diamond"表示。

输入格式:
测试数据有多组,首先输入测试的组数T (0<T<10),然后是T组测试数据;每组测试输入一行,按“花色 数字”的格式输入若干张牌,花色可能为"spade"、"heart"、"club"、"diamond"之一,数字为1~13。输入的数据之间可能有若干(至少1个)空格,在行的首尾也可能有若干空格,但每组输入数据的总长度不会超过1000个字符。

输出格式:
每组测试输出一行,按描述中的排序规则从大到小输出牌的信息,数据之间都以一个空格分隔。

输入样例:
2
diamond 1 club 1 heart 1 spade 3 diamond 2 club 3 heart 2
diamond 13 club 13 heart 13 spade 12

输出样例:
spade 3 club 3 heart 2 diamond 2 heart 1 club 1 diamond 1
heart 13 club 13 diamond 13 spade 12

  • 写回答

1条回答 默认 最新

  • aabyte 2021-09-02 23:12
    关注

    定义一个结构体,三个成员:纸牌排面数字(int),纸牌花色(string),纸牌花色的别名(int型,取值为1,2,3,4,输入完成后根据纸牌花色赋值),然后通过STL中的sort函数,利用第三个参数compare确定排序规则后进行排序,最后输出
    有帮助望采纳

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 9月13日
  • 已采纳回答 9月5日
  • 创建了问题 9月2日

悬赏问题

  • ¥15 下图接收小电路,谁知道原理
  • ¥15 装 pytorch 的时候出了好多问题,遇到这种情况怎么处理?
  • ¥20 IOS游览器某宝手机网页版自动立即购买JavaScript脚本
  • ¥15 手机接入宽带网线,如何释放宽带全部速度
  • ¥30 关于#r语言#的问题:如何对R语言中mfgarch包中构建的garch-midas模型进行样本内长期波动率预测和样本外长期波动率预测
  • ¥15 ETLCloud 处理json多层级问题
  • ¥15 matlab中使用gurobi时报错
  • ¥15 这个主板怎么能扩出一两个sata口
  • ¥15 不是,这到底错哪儿了😭
  • ¥15 2020长安杯与连接网探