这道题的逻辑怪复杂的,写起来蛮费时间的
结构体中要储存的信息多,整体不难,信息量大,容易把人搞蒙

#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
struct ti{int tihao;int fen;int xuan;int Tnum;bool zhengquedaan[127]={0};int cuo=0;
}Data[101];
bool cmp(ti A,ti B){if(A.cuo!=B.cuo) return A.cuo>B.cuo;else return A.tihao<B.tihao;
}
int main(){int N,M;//学生,题scanf("%d %d",&N,&M);for(int i=0;i<M;i++){//题数scanf("%d",&Data[i].fen);scanf("%d",&Data[i].xuan);scanf("%d",&Data[i].Tnum);for(int j=0;j<Data[i].Tnum;j++){char c;scanf(" %c",&c);int a=c;Data[i].zhengquedaan[a]=true;}Data[i].tihao=i+1;}for(int i=0;i<N;i++){                                       //人int fenshu=0;for(int k=0;k<M;k++){                                   //题int num;char c;int zhengnum=0;int flag=true;scanf(" (%d",&num);for(int j=0;j<num;j++){                             //验证答案scanf(" %c",&c);if(Data[k].zhengquedaan[c]) zhengnum++;else flag=false;}getchar();                                          //吸收括号if(zhengnum==Data[k].Tnum&&flag) fenshu+=Data[k].fen;else Data[k].cuo++;}printf("%d\n",fenshu);}sort(Data,Data+M,cmp);if(Data[0].cuo==0){printf("Too simple");return 0;}printf("%d",Data[0].cuo);for(int i=0;i<M;i++){if(Data[i].cuo!=Data[0].cuo) break;printf(" %d",Data[i].tihao);}return 0;
}

转载于:https://www.cnblogs.com/hebust/p/9496099.html

【PAT】B1058 选择题(20 分)相关推荐

  1. PAT (Basic Level) Practice (中文)1058 选择题 (20 分)

    PAT (Basic Level) Practice (中文)1058 选择题 (20 分) 文章目录 PAT (Basic Level) Practice (中文)1058 选择题 (20 分) 题 ...

  2. C++学习之路 | PTA乙级—— 1058 选择题 (20 分)(精简)

    1058 选择题 (20 分) 批改多选题是比较麻烦的事情,本题就请你写个程序帮助老师批改多选题,并且指出哪道题错的人最多. 输入格式: 输入在第一行给出两个正整数 N(≤ 1000)和 M(≤ 10 ...

  3. PAT 1104 天长地久 (20 分) C语言

    这个题目的关键在于对代码的简化,很容易就超时,所以一定要尽可能简化,我的简化思路放在文章最后,欢迎参考与指正. 题目: 1104 天长地久 (20 分) "天长地久数"是指一个 K ...

  4. 【PAT乙级】1058 选择题 (20 分)

    题目地址 #include<bits/stdc++.h> using namespace std; const int N=1e5+10; int score[N],sum[N],cnt[ ...

  5. 【详细注释】1058 选择题 (20 分)

    立志用最少的代码做最高效的表达 PAT乙级最优题解-->传送门 批改多选题是比较麻烦的事情,本题就请你写个程序帮助老师批改多选题,并且指出哪道题错的人最多. 输入格式: 输入在第一行给出两个正整 ...

  6. 【PAT (Advanced Level) Practice】1124 Raffle for Weibo Followers (20 分)

    1124 Raffle for Weibo Followers (20 分) John got a full mark on PAT. He was so happy that he decided ...

  7. PAT乙级 1032 挖掘机技术哪家强 (20 分)

    1032 挖掘机技术哪家强 (20 分) 为了用事实说明挖掘机技术到底哪家强,PAT 组织了一场挖掘机技能大赛.现请你根据比赛结果统计出技术最强的那个学校. 原题链接 代码 #include < ...

  8. 【PAT乙】1069 微博转发抽奖 (20分) set

    1069 微博转发抽奖 (20分) 小明 PAT 考了满分,高兴之余决定发起微博转发抽奖活动,从转发的网友中按顺序每隔 N 个人就发出一个红包.请你编写程序帮助他确定中奖名单. 输入格式: 输入第一行 ...

  9. PAT乙级 1003 我要通过! (20分)

    PAT乙级练习总结 PAT乙级 1003 我要通过! (20分) 第二版有注释,希望我的思路可以帮助你. 文章目录 PAT乙级练习总结 一.1003题目 二.第一版只过了三个点 三.第二版 1003 ...

  10. pat B1032 挖掘机技术哪家强 (20分)

    1032 挖掘机技术哪家强 (20分) 为了用事实说明挖掘机技术到底哪家强,PAT 组织了一场挖掘机技能大赛.现请你根据比赛结果统计出技术最强的那个学校. 输入格式: 输入在第 1 行给出不超过 10 ...

最新文章

  1. 高效管理 Elasticsearch 中基于时间的索引——本质是在利用滚动模式做数据的冷热分离,热索引可以用ssd...
  2. softmax函数理解
  3. java query接口_「软帝学院」Java零基础学习详解
  4. Java 第六次作业
  5. netty系列之:netty中各不同种类的channel详解
  6. 北航卓越计划 计算机科学,解读:北京航空航天大学2017卓越计划自主招生条件...
  7. C语言基础知识整理(选择结构)
  8. python 二维数组长度_谈一谈多维数组
  9. Sublime 插件安装、卸载、更新
  10. Linux环境下使用NLPIR(ICTCLAS)中文分词详解
  11. QQ在线客服代码(不需要加好友即可发起临时会话)
  12. 阅读《第31次中国互联网络发展状况统计报告》,对中国互联网发展趋势和特点的分析
  13. 初级第八旬03— 初级课程第八旬试题
  14. 全面解析Linux 内核 3.10.x - Device Tree 详解
  15. Vmware虚拟机NAT模式设置IP
  16. 有关运放自激振荡的帖子(1)
  17. win10多用户同时远程桌面登陆Termsrv.dll(允许多个RDP会话)-win10最新2004版。
  18. 关于寻迹小车组装建议
  19. 数据结构--排序算法(冒泡排序)
  20. 【图片新闻】洛克希德马丁公司发布第一架F-21战斗机

热门文章

  1. python怎么读取txt文件内容然后保存到excel-Python实现读取txt文件并转换为excel的方法示例...
  2. python 语言-Python的语言特点
  3. python装饰器原理-看完这篇文章还不懂Python装饰器?
  4. python画仿真图-Python数据分析:绘图可视化之matplotlib入门
  5. python代码写完怎么运行-教你如何编写、保存与运行 Python 程序
  6. 不懂编程可以自学python吗-我不会编程,也可能学会Python吗?
  7. python教学视频下载-董付国老师Python精品教学,视频教程下载
  8. 派森编程软件python-派森Python
  9. python和java一样吗-Python与Java的区别与优劣?
  10. python自学平台-自学Python网站推荐 从入门到精通