PAT Basic 1059】的更多相关文章

1059 C语言竞赛 C 语言竞赛是浙江大学计算机学院主持的一个欢乐的竞赛.既然竞赛主旨是为了好玩,颁奖规则也就制定得很滑稽: 0.冠军将赢得一份“神秘大奖”(比如很巨大的一本学生研究论文集……). 1.排名为素数的学生将赢得最好的奖品 —— 小黄人玩偶! 2.其他人将得到巧克力. 给定比赛的最终排名以及一系列参赛者的 ID,你要给出这些参赛者应该获得的奖品. 输入格式: 输入第一行给出一个正整数 N(≤10​4​​),是参赛者人数.随后 N 行给出最终排名,每行按排名顺序给出一位参赛者的 ID…
C 语言竞赛是浙江大学计算机学院主持的一个欢乐的竞赛.既然竞赛主旨是为了好玩,颁奖规则也就制定得很滑稽: 0.冠军将赢得一份“神秘大奖”(比如很巨大的一本学生研究论文集……). 1.排名为素数的学生将赢得最好的奖品 —— 小黄人玩偶! 2.其他人将得到巧克力. 给定比赛的最终排名以及一系列参赛者的 ID,你要给出这些参赛者应该获得的奖品. 输入格式: 输入第一行给出一个正整数 N(≤),是参赛者人数.随后 N 行给出最终排名,每行按排名顺序给出一位参赛者的 ID(4 位数字组成).接下来给出一个…
1057 数零壹 给定一串长度不超过 10​5​​ 的字符串,本题要求你将其中所有英文字母的序号(字母 a-z 对应序号 1-26,不分大小写)相加,得到整数 N,然后再分析一下 N 的二进制表示中有多少 0.多少 1.例如给定字符串 PAT (Basic),其字母序号之和为:16+1+20+2+1+19+9+3=71,而 71 的二进制是 1000111,即有 3 个 0.4 个 1. 输入格式: 输入在一行中给出长度不超过 10​5​​.以回车结束的字符串. 输出格式: 在一行中先后输出 0…
题目 题目地址:PAT 乙级 1059 题解 开始我是从暴力循环的角度考虑这道题,大概计算了一下时间复杂度应该不会超,但是很不幸没有通过,时间超限:之后考虑搜索算法可能优化不太好,因此就把输入的序列先排序,之后用了二分查找,结果复杂度还是超(现在想想,实际上暴力循环和先排序后二分的复杂度差不多): 通过的方法是通过输入的ID号作为数组的下标,那么在查找的过程中就简化为线性,O(1)的复杂度就不会存在任何问题,同时只需要通过整数类型的数组和bool类型的数组就能解决所有访问问题,与之前的结构体存储…
PAT (Basic Level) Practise (中文)-1039. 到底买不买(20) http://www.patest.cn/contests/pat-b-practise/1039 小红想买些珠子做一串自己喜欢的珠串.卖珠子的摊主有很多串五颜六色的珠串,但是不肯把任何一串拆散了卖.于是小红要你帮忙判断一下,某串珠子里是否包含了全部自己想要的珠子?如果是,那么告诉她有多少多余的珠子:如果不是,那么告诉她缺了多少珠子. 为方便起见,我们用[0-9].[a-z].[A-Z]范围内的字符来…
PAT (Basic Level) Practise (中文)-  1022. D进制的A+B (20)  http://www.patest.cn/contests/pat-b-practise/1022 输入两个非负10进制整数A和B(<=230-1),输出A+B的D (1 < D <= 10)进制数. 输入格式: 输入在一行中依次给出3个整数A.B和D. 输出格式: 输出A+B的D进制数. 输入样例: 123 456 8 输出样例: 1103 #include<stdio.h…
PAT (Basic Level) Practise (中文)- 1024. 科学计数法 (20) http://www.patest.cn/contests/pat-b-practise/1024 科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式[+-][1-9]"."[0-9]+E[+-][0-9]+,即数字的整数部分只有1位,小数部分至少有1位,该数字及其指数部分的正负号即使对正数也必定明确给出. 现以科学计数法的格式给出实数A,请编写程序按普通数字表…
PAT (Basic Level) Practise (中文)-1025. 反转链表 (25)   http://www.patest.cn/contests/pat-b-practise/1025 给定一个常数K以及一个单链表L,请编写程序将L中每K个结点反转.例如:给定L为1→2→3→4→5→6,K为3,则输出应该为3→2→1→6→5→4:如果K为4,则输出应该为4→3→2→1→5→6,即最后不到K个元素不反转. 输入格式: 每个输入包含1个测试用例.每个测试用例第1行给出第1个结点的地址.…
PAT (Basic Level) Practise (中文)- 1026. 程序运行时间(15)    http://www.patest.cn/contests/pat-b-practise/1026 要获得一个C语言程序的运行时间,常用的方法是调用头文件time.h,其中提供了clock()函数,可以捕捉从程序开始运行到clock()被调用时所耗费的时间.这个时间单位是clock tick,即“时钟打点”.同时还有一个常数CLK_TCK,给出了机器时钟每秒所走的时钟打点数.于是为了获得一个…
PAT (Basic Level) Practise (中文)-1027. 打印沙漏(20)  http://www.patest.cn/contests/pat-b-practise/1027 本题要求你写个程序把给定的符号打印成沙漏的形状.例如给定17个“*”,要求按下列格式打印 ***** *** * *** ***** 所谓“沙漏形状”,是指每行输出奇数个符号:各行符号中心对齐:相邻两行符号数差2:符号数先从大到小顺序递减到1,再从小到大顺序递增:首尾符号数相等. 给定任意N个符号,不一…