洛谷 P3692 [PUB1]夏幻的考试
题目背景
夏之幻是软件工程系的大神,学校把举办考试的任务交给她了。
题目描述
某大学软工专业要举办一场笔试,学生们要在机读答题卡上填写答案来进行答题。学校把机读卡识别任务交给了夏之幻,但是这套系统的需求太复杂了,她还要做自己的其他项(you)目(xi),所以她想让你来帮忙实现一部分功能。
试卷分卷头,单选题两部分。
夏幻大神已经写好了识别程序,因此卷头和答案将直接以数字信息的形式呈现给你,你要实现下面几个功能:
需要处理T张试卷,按顺序检查下列选项。
1.检查考号的填写是否准确。
输入信息的格式:
一行,一个16位无符号二进制数id。表示考生的考号为id,正确的考号范围在十进制下是1~10000。
如果考号有错误,输出一行“Wrong ID”并结束对这张试卷的处理(剩下两个选项的数据依然要读入,但不输出任何内容),不含引号。如果考号正确,输出一行,“ID: ”+一个整数,表示考号的十进制形式。不含引号。
无需考虑考号是否重复,只要在范围内均为正确。
2.检查试卷类型是否正确。
输入信息格式:
一行,两个整数,中间无分隔,只能是0或者1。第一个整数表示试卷类型A是否被涂黑(0表示未涂黑,1表示涂黑),第二个整数表示试卷类型B是否涂黑。其实试卷类型可以由二进制考号的最后一位得到,0表示A卷,1表示B卷,你只需要检查考生填涂的是否正确。
如果考生将试卷类型正确填涂(填涂且只填涂了正确的那一项),输出一行“Type Correct”,否则输出一行“Type Incorrect”,不含引号。无论试卷类型是否填涂正确,你还需要接着处理这张试卷。
3.给单选题打分。
单选题的数量n和标准答案将会在录入第一张试卷前给出。
考生答案的输入格式:
n行,每行4个整数,中间无分隔。每个整数是0或1。
按顺序分别代表A,B,C,D是否被涂黑(0表示未涂黑,1表示涂黑)。考生回答正确当且仅当该题正确答案的位置被涂黑,且错误答案的位置未被涂黑。
输出一行,一个四舍五入到小数点后1位的浮点数,表示考生的得分,满分为100分,每个题的分数相同。
输入输出格式
输入格式:
第一行两个整数T,n,空格分开,含义见题目描述。
接下来一行一个字符串s,长度为n,每个字符是大写字母A,B,C,D中的一个,第i个字符表示单选题i的答案。
接下来T*(n+2)行含有T组信息,表示每张试卷的内容,格式见题目描述。
输出格式:
对于每张试卷,输出评判结果,格式见题目描述。两张试卷的评判结果之间空一行。
输入输出样例
2 5
ABCAD
0000000011111111
01
1000
0010
0100
1000
0010
1001001001001001
01
0001
1010
0111
1111
0000
ID: 255
Type Correct
40.0 Wrong ID
3 3
ABC
0000000000000000
01
1111
0001
0100
0000000000000010
10
1000
0100
0010
0000000000000011
11
0001
0000
0010
Wrong ID ID: 2
Type Correct
100.0 ID: 3
Type Incorrect
33.3
5 31
ACAACCDDBBDADDCBCACCDBCAACAAAAC
0000101111000001
10
1000
0010
1000
1111
0010
0010
0001
0001
0100
0100
0001
1000
0001
0001
0010
1111
0010
1000
0010
0010
0001
0100
1111
1000
1000
0010
1000
0100
1000
1000
0010
0000010101001111
10
1000
0010
1000
1000
0010
0010
0001
0001
0100
0100
0001
1000
0001
0001
0010
0100
1000
1000
0000
0010
0001
0100
0010
1000
1000
0010
1000
1000
0000
0000
0010
0001110001100110
11
1000
0010
1000
1000
0010
0010
0001
0001
0100
0100
0001
1000
0010
0100
0010
0100
0010
0100
0010
0010
0001
0100
0010
1000
1000
0010
1000
1111
1000
1000
0010
0001001111110001
10
1010
0010
1000
1000
0010
0010
0001
0001
0100
0100
0010
1000
0001
0001
0010
0100
0010
1000
0010
0010
0001
0100
0010
1000
1000
0010
1000
1000
1000
1000
0010
0001110010000100
10
1000
0010
1000
1000
0000
0010
0001
0001
0100
0100
0001
1000
0001
0001
0001
0100
0010
1000
0010
0010
0001
0100
0010
1000
1000
0010
1000
1000
0000
1000
0001
ID: 3009
Type Incorrect
87.1 ID: 1359
Type Incorrect
87.1 ID: 7270
Type Incorrect
87.1 ID: 5105
Type Incorrect
93.5 ID: 7300
Type Correct
87.1
说明
对于100%的数据
1<=T<=1000
1<=n<=50
注意:
1.请在最后一个试卷处理完后也加上一个换行
2.由于win系统和linux系统换行的不同,建议不要使用scanf读入char
思路:模拟。
错误:宛如智障的错误。
#include<cmath>
#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
using namespace std;
int T,n;
int sum,len;
double ans;
int cnt[];
char kind[],s[],sns[][];
void inread(){
scanf("%s",s);len=strlen(s);
for(int i=;i<len;i++) sum+=(s[i]-'')*pow(,len--i);
scanf("%s",kind);
for(int i=;i<=n;i++) scanf("%s",&sns[i]);
}
bool judge(){
if(sum<||sum>){ cout<<"Wrong ID"<<endl;return false;}
else{ cout<<"ID: "<<sum<<endl;}
if(s[len-]==''&&kind[]!=''||s[len-]==''&&kind[]==''||s[len-]==''&&kind[]==''||s[len-]==''&&kind[]=='') cout<<"Type Incorrect"<<endl;
else cout<<"Type Correct"<<endl;
return true;
}
bool judge1(int ques,int an){
for(int i=;i<;i++)
if(i!=an&&sns[ques][i]=='') return false;
return true;
}
int main(){
scanf("%d%d",&T,&n);
scanf("%s",s);
double pos=100.0/n*1.0;
int len=strlen(s);
for(int i=;i<len;i++) cnt[i+]=s[i]-'A';
while(T--){
sum=;ans=;
inread();
if(!judge()){ cout<<endl;continue; }
for(int i=;i<=n;i++){
if(sns[i][cnt[i]]==''&&judge1(i,cnt[i])) ans+=pos;
else continue;
}
printf("%.1lf",ans);
cout<<endl;
}
}
洛谷 P3692 [PUB1]夏幻的考试的更多相关文章
- 洛谷 P4964 绫小路的特别考试 解题报告
P4964 绫小路的特别考试 题目背景 这世界上「胜利」便是一切.无关乎过程. 要付出多少牺牲都无所谓.只要最后我「胜出」那就行了. 题目描述 一场新的特别考试来临了,这次的考试内容是(wan e d ...
- 洛谷模拟NOIP考试反思
洛谷模拟NOIP考试反思 想法 考了这么简单的试qwq然而依然emmmmmm成绩不好 虽然本次难度应该是大于正常PJ难度的但还是很不理想,离预估分数差很多qwq 于是就有了本反思嘤嘤嘤 比赛链接 原比 ...
- 洛谷P3434 [POI2006]KRA-The Disks(线段树)
洛谷题目传送门 \(O(n)\)的正解算法对我这个小蒟蒻真的还有点思维难度.洛谷题解里都讲得很好. 考试的时候一看到300000就直接去想各种带log的做法了,反正不怕T...... 我永远只会有最直 ...
- 洛谷P3957 跳房子(Noip2017普及组 T4)
今天我们的考试就考到了这道题,在考场上就压根没有思路,我知道它是一道dp的题,但因为太弱还是写不出来. 下来评讲的时候知道了一些思路,是dp加上二分查找的方式,还能够用单调队列优化. 但看了网上的许多 ...
- 洛谷 P1525 关押罪犯
题目链接 https://www.luogu.org/problemnew/show/P1525 题目描述 S城现有两座监狱,一共关押着N名罪犯,编号分别为1−N.他们之间的关系自然也极不和谐.很多罪 ...
- LCT总结——概念篇+洛谷P3690[模板]Link Cut Tree(动态树)(LCT,Splay)
为了优化体验(其实是强迫症),蒟蒻把总结拆成了两篇,方便不同学习阶段的Dalao们切换. LCT总结--应用篇戳这里 概念.性质简述 首先介绍一下链剖分的概念(感谢laofu的讲课) 链剖分,是指一类 ...
- 洛谷八连测R6
本次测试暴0!!!还有两周就要考试啦!!! 看题目时觉得难度不大,就直接写正解,没有参照数据,导致测出的结果和预想有较大差距. 不过得到经验,不管题目难易(除了D1T1)都要参照数据一部分一部分写,那 ...
- 洛谷P3459 [POI2007]MEG-Megalopolis [树链剖分]
题目传送门 MEG 题目描述 Byteotia has been eventually touched by globalisation, and so has Byteasar the Postma ...
- 洛谷P3434 [POI2006]KRA-The Disks [模拟]
题目传送门 KRA 题目描述 For his birthday present little Johnny has received from his parents a new plaything ...
随机推荐
- Linux经常使用命令(九) - cat
cat命令的用途是连接文件或标准输入并打印.这个命令经常使用来显示文件内容,或者将几个文件连接起来显示,或者从标准输入读取内容并显示,它常与重定向符号配合使用. 1. 命令格式: cat [选项] 文 ...
- 卸载虚拟机时错误关闭了某个服务,使得电脑除了chrome浏览器都不能联网
不是中毒,也不需要重装系统,可能是关闭了svchost服务 以下为搜索到的答案,亲测第一种好用 最近两周在三班四班有5位同学电脑7次出现网络故障,表现为能连上锐捷.DNS正常却不能上网,其中在我自己的 ...
- BZOJ 1001 平面图与对偶图的转化 最短路Or最大流
思路: 1.按照题意求最小割 转换成最大流用Dinic解 2. 转换成对偶图 求最短路 Dinic: //By SiriusRen #include <queue> #include &l ...
- 外部样式表声明的样式并不会进入style对象
在网页设计当中,我们注重网页的行为(js).结构(HTLM).样式(css)分离开 内联样式表或者内部样式表声明的样式信息都会进入style对象. 我们可以测试一下: 但是我们的外部样式表,也就是通过 ...
- springMVC学习笔记_转载(一)-----springMVC原理
阅读目录 一.什么是springmvc 二.mvc在b/s系统下的应用 三.SpringMVC框架介绍 回到顶部 一.什么是springmvc springMVC是spring框架的一个模块,spri ...
- German Collegiate Programming Contest 2015(第三场)
Divisions David is a young boy and he loves numbers. Recently he learned how to divide two numbers.D ...
- Unity调用Android的两种方式:其一、调用jar包
unity在Android端开发的时候,免不了要调用Java:Unity可以通过两种方式来调用Android:一是调用jar.二是调用aar. 这篇文章主要讲解怎么从无到有的生成一个jar包,然后un ...
- 洛谷 P1176 路径计数2
P1176 路径计数2 题目描述 一个N×N的网格,你一开始在(1, 1),即左上角.每次只能移动到下方相邻的格子或者右方相邻的格子,问到达(N, N),即右下角有多少种方法. 但是这个问题太简单了, ...
- js使用offsetHeight获取div高度为0的问题
今晚试了好久没弄出来,后来获取子一层的div就能获取到高度了 我的情况是这样的:我在最外面写一个<div id="mainBody">, 里面写bootstrap的d ...
- ArcGIS api for javascript——设置可见的比例
描述 ArcGIS JavaScript API的1.2版本加入更多地图如何缓存,切片和地图服务的控制.本例展示了如何限制地图能够接收切片的比例等级.如果不想用户过分的放大或缩小,即使切片存在这些极端 ...