算法题目
文章平均质量分 83
burke_____
这个作者很懒,什么都没留下…
展开
-
1063. Set Similarity (25)
题目链接:https://www.patest.cn/contests/pat-a-practise/1063//freopen("C:\\Users\\yehao\\Desktop\\Test\\bin\\Release\\in1.txt", "r", stdin);#include #include #include #include #include原创 2017-12-04 22:34:51 · 130 阅读 · 0 评论 -
PAT刷题:1025. PAT Ranking (25)
Programming Ability Test (PAT) is organized by the College of Computer Science and Technology of Zhejiang University. Each test is supposed to run simultaneously in several places, and the ranklists w原创 2017-10-26 17:52:16 · 166 阅读 · 0 评论 -
PAT刷题:1016. Phone Bills (25)
本题有个大坑:如果客户A的账单记录没有任何一对是合法的,则客户A什么信息都不输出,对于这一点,出题者不说明,也不容易测试出来,我只想问候他全家。判读有效记录,只要本条记录是on-line,下一条记录是off-line,就是有效记录先计算出两头零碎时间,再计算出中间通话多少小时,用循环相乘得到结果A long-distance telephone company原创 2017-10-25 21:49:48 · 259 阅读 · 0 评论 -
1015. 德才论 (25)
宋代史学家司马光在《资治通鉴》中有一段著名的“德才论”:“是故才德全尽谓之圣人,才德兼亡谓之愚人,德胜才谓之君子,才胜德谓之小人。凡取人之术,苟不得圣人,君子而与之,与其得小人,不若得愚人。”现给出一批考生的德才分数,请根据司马光的理论给出录取排名。输入格式:输入第1行给出3个正整数,分别为:N(5),即考生总数;L(>=60),为录取最低分数线,即德分和才分均不低于L的考原创 2017-04-18 04:22:13 · 357 阅读 · 0 评论 -
PAT刷题:1019. General Palindromic Number (20)
本题比较简单A number that will be the same when it is written forwards or backwards is known as a Palindromic Number. For example, 1234321 is a palindromic number. All single digit numbers are pal原创 2017-10-24 19:07:02 · 145 阅读 · 0 评论 -
PAT刷题:1017. Queueing at Bank (25)
本题要注意一点:17:00:01之前来的人就可以入队,不管什么时候都要处理完,所以时间循环一定要很大Suppose a bank has K windows open for service. There is a yellow line in front of the windows which devides the waiting area into two parts.原创 2017-10-23 21:47:45 · 182 阅读 · 0 评论 -
PAT刷题:1033. 旧键盘打字(20)
旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现。现在给出应该输入的一段文字、以及坏掉的那些键,打出的结果文字会是怎样?输入格式:输入在2行中分别给出坏掉的那些键、以及应该输入的文字。其中对应英文字母的坏键以大写给出;每段文字是不超过105个字符的串。可用的字符包括字母[a-z, A-Z]、数字0-9、以及下划线“_”(代表空格)、“,”、“.”、“-”、“+”(代原创 2017-06-18 23:24:03 · 383 阅读 · 0 评论 -
PAT刷题:1037. 在霍格沃茨找零钱(20)
如果你是哈利·波特迷,你会知道魔法世界有它自己的货币系统 —— 就如海格告诉哈利的:“十七个银西可(Sickle)兑一个加隆(Galleon),二十九个纳特(Knut)兑一个西可,很容易。”现在,给定哈利应付的价钱P和他实付的钱A,你的任务是写一个程序来计算他应该被找的零钱。输入格式:输入在1行中分别给出P和A,格式为“Galleon.Sickle.Knut”,其间用1个空格分隔。原创 2017-10-19 14:10:31 · 319 阅读 · 0 评论 -
PAT刷题:1038. 统计同成绩学生(20)
本题要求读入N名学生的成绩,将获得某一给定分数的学生人数输出。输入格式:输入在第1行给出不超过105的正整数N,即学生总人数。随后1行给出N名学生的百分制整数成绩,中间以空格分隔。最后1行给出要查询的分数个数K(不超过N的正整数),随后是K个分数,中间以空格分隔。输出格式:在一行中按查询顺序给出得分等于指定分数的学生人数,中间以空格分隔,但行末不得有多余空格。输原创 2017-10-19 14:18:12 · 183 阅读 · 0 评论 -
PAT刷题:1035. Password (20)
To prepare for PAT, the judge sometimes has to generate random passwords for the users. The problem is that there are always some confusing passwords since it is hard to distinguish 1 (one) from l (L原创 2017-11-30 19:49:06 · 162 阅读 · 0 评论 -
PAT刷题:1036. Boys vs Girls (25)
This time you are asked to tell the difference between the lowest grade of all the male students and the highest grade of all the female students.Input Specification:Each input file contains o原创 2017-11-30 20:19:58 · 144 阅读 · 0 评论 -
PAT刷题:1037. Magic Coupon (25)
The magic shop in Mars is offering some magic coupons. Each coupon has an integer N printed on it, meaning that when you use this coupon with a product, you may get N times the value of that product b原创 2017-11-30 21:44:52 · 144 阅读 · 0 评论 -
1062. Talent and Virtue (25)
题目链接:https://www.patest.cn/contests/pat-a-practise/1062本题比较简单,就是一个排序的问题,用STL的sort方法#include #include #include #include #include #include #include using namespace std;struc原创 2017-12-04 21:46:16 · 217 阅读 · 0 评论 -
First Contact (30)
题目链接:https://www.patest.cn/contests/pat-a-101-149-3-2017-12-09/D本题不难,难点在于建模,其他难点就在于条件判断比较多直接上代码#include #include #include #include #include #include #include using namespace std;原创 2017-12-13 09:03:10 · 633 阅读 · 0 评论 -
1056. Mice and Rice (25)
题目链接:https://www.patest.cn/contests/pat-a-practise/1056采用递归调用的方法求解#include #include #include #include #include #include #include using namespace std;struct Mice{ int i原创 2017-12-04 02:28:39 · 164 阅读 · 0 评论 -
1055. The World's Richest (25)
题目链接:https://www.patest.cn/contests/pat-a-practise/1055先进行排序,然后在排好序的vector中寻找符合条件的对象,否则会有case超时。如果采用先寻找符合条件的对象,然后排序,会超时。。。。#include #include #include #include #include #incl原创 2017-12-04 00:01:38 · 177 阅读 · 0 评论 -
1053. Path of Equal Weight (30)
题目链接:https://www.patest.cn/contests/pat-a-practise/1053通过map建立树图结构,采用递归调用的方法来实现#include #include #include #include #include #include #include using namespace std;struct Node{原创 2017-12-03 20:05:08 · 116 阅读 · 0 评论 -
1050. String Subtraction (20)
Given two strings S1 and S2, S = S1 - S2 is defined to be the remaining string after taking all the characters in S2from S1. Your task is simply to calculate S1 - S2 for any given strings. However,原创 2017-12-03 13:52:51 · 138 阅读 · 0 评论 -
1042. Shuffling Machine (20)
Shuffling is a procedure used to randomize a deck of playing cards. Because standard shuffling techniques are seen as weak, and in order to avoid "inside jobs" where employees collaborate with gambler原创 2017-12-01 20:56:06 · 150 阅读 · 0 评论 -
PAT刷题:1038. Recover the Smallest Number (30)
Given a collection of number segments, you are supposed to recover the smallest number from them. For example, given {32, 321, 3214, 0229, 87}, we can recover many numbers such like 32-321-3214-0229-8原创 2017-12-01 16:55:25 · 139 阅读 · 0 评论 -
PAT刷题:1050. 螺旋矩阵(25)
本题要求将给定的N个正整数按非递增的顺序,填入“螺旋矩阵”。所谓“螺旋矩阵”,是指从左上角第1个格子开始,按顺时针螺旋方向填充。要求矩阵的规模为m行n列,满足条件:m*n等于N;m>=n;且m-n取所有可能值中的最小值。输入格式:输入在第1行中给出一个正整数N,第2行给出N个待填充的正整数。所有数字不超过104,相邻数字以空格分隔。输出格式:输出螺旋矩阵。每行n个数原创 2017-10-20 10:36:08 · 349 阅读 · 0 评论 -
PAT刷题:1012. The Best Rank (25)
本题要注意两点:1、平均成绩要四舍五入。 2、注意有并列名次,要处理好。To evaluate the performance of our first year CS majored students, we consider their grades of three courses only: C - C Programming Language, M - M原创 2017-10-21 21:19:24 · 183 阅读 · 0 评论 -
1014. 福尔摩斯的约会 (20)
大侦探福尔摩斯接到一张奇怪的字条:“我们约会吧! 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hyscvnm”。大侦探很快就明白了,字条上奇怪的乱码实际上就是约会的时间“星期四 14:04”,因为前面两字符串中第1对相同的大写英文字母(大小写有区分)是第4个字母'D',代表星期四;第2对相同的字符是'E',那是第5个英文字母,代表一天里的第14个钟头原创 2017-04-18 02:47:37 · 149 阅读 · 0 评论 -
1019. 数字黑洞 (20)
给定任一个各位数字不完全相同的4位正整数,如果我们先把4个数字按非递增排序,再按非递减排序,然后用第1个数字减第2个数字,将得到一个新的数字。一直重复这样做,我们很快会停在有“数字黑洞”之称的6174,这个神奇的数字也叫Kaprekar常数。例如,我们从6767开始,将得到7766 - 6677 = 10899810 - 0189 = 96219621 - 1269 = 8原创 2017-04-27 23:52:11 · 157 阅读 · 0 评论 -
1021. 个位数统计 (15)
给定一个k位整数N = dk-1*10k-1 + ... + d1*101 + d0 (0i<=9, i=0,...,k-1, dk-1>0),请编写程序统计每种不同的个位数字出现的次数。例如:给定N = 100311,则有2个0,3个1,和1个3。输入格式:每个输入包含1个测试用例,即一个不超过1000位的正整数N。输出格式:对N中每一种不同的个位数字,以D:原创 2017-04-28 13:04:28 · 237 阅读 · 0 评论 -
1020. 月饼 (25)
月饼是中国人在中秋佳节时吃的一种传统食品,不同地区有许多不同风味的月饼。现给定所有种类月饼的库存量、总售价、以及市场的最大需求量,请你计算可以获得的最大收益是多少。注意:销售时允许取出一部分库存。样例给出的情形是这样的:假如我们有3种月饼,其库存量分别为18、15、10万吨,总售价分别为75、72、45亿元。如果市场的最大需求量只有20万吨,那么我们最大收益策略应该是卖出全部15万吨第2种原创 2017-04-28 13:05:12 · 222 阅读 · 0 评论 -
1023. 组个最小数 (20)
给定数字0-9各若干个。你可以以任意顺序排列这些数字,但必须全部使用。目标是使得最后得到的数尽可能小(注意0不能做首位)。例如:给定两个0,两个1,三个5,一个8,我们得到的最小的数就是10015558。现给定数字,请编写程序输出能够组成的最小的数。输入格式:每个输入包含1个测试用例。每个测试用例在一行中给出10个非负整数,顺序表示我们拥有数字0、数字1、……数字9的个数。原创 2017-04-29 16:00:43 · 230 阅读 · 0 评论 -
1024. 科学计数法 (20)
科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式[+-][1-9]"."[0-9]+E[+-][0-9]+,即数字的整数部分只有1位,小数部分至少有1位,该数字及其指数部分的正负号即使对正数也必定明确给出。现以科学计数法的格式给出实数A,请编写程序按普通数字表示法输出A,并保证所有有效位都被保留。输入格式:每个输入包含1个测试用例,即一个以科学计原创 2017-04-29 17:51:06 · 186 阅读 · 0 评论 -
1025. 反转链表 (25)
给定一个常数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个结点的地址、结点总个数正整数N(5)、以及正整数K(接下来有N行,每行格式为:Add原创 2017-04-30 00:17:33 · 190 阅读 · 0 评论 -
1027. 打印沙漏(20)
本题要求你写个程序把给定的符号打印成沙漏的形状。例如给定17个“*”,要求按下列格式打印***** *** * ********所谓“沙漏形状”,是指每行输出奇数个符号;各行符号中心对齐;相邻两行符号数差2;符号数先从大到小顺序递减到1,再从小到大顺序递增;首尾符号数相等。给定任意N个符号,不一定能正好组成一个沙漏。要求打印出的沙漏能用掉尽可能多的符号。输入原创 2017-05-05 11:49:47 · 184 阅读 · 0 评论 -
1007. 素数对猜想 (20)
让我们定义 dn 为:dn = pn+1 - pn,其中 pi 是第i个素数。显然有 d1=1 且对于n>1有 dn 是偶数。“素数对猜想”认为“存在无穷多对相邻且差为2的素数”。现给定任意正整数N (5),请计算不超过N的满足猜想的素数对的个数。输入格式:每个测试输入包含1个测试用例,给出正整数N。输出格式:每个测试用例的输出占一行,不超过N的满足猜想的素数对的个数。原创 2017-04-14 15:50:30 · 163 阅读 · 0 评论 -
1005. 继续(3n+1)猜想 (25)
卡拉兹(Callatz)猜想已经在1001中给出了描述。在这个题目里,情况稍微有些复杂。当我们验证卡拉兹猜想的时候,为了避免重复计算,可以记录下递推过程中遇到的每一个数。例如对n=3进行验证的时候,我们需要计算3、5、8、4、2、1,则当我们对n=5、8、4、2进行验证的时候,就可以直接判定卡拉兹猜想的真伪,而不需要重复计算,因为这4个数已经在验证3的时候遇到过了,我们称5、8、4、2是被原创 2017-04-14 13:09:53 · 219 阅读 · 0 评论 -
1006. 换个格式输出整数 (15)
让我们用字母B来表示“百”、字母S表示“十”,用“12...n”来表示个位数字n(输入格式:每个测试输入包含1个测试用例,给出正整数n(输出格式:每个测试用例的输出占一行,用规定的格式输出n。输入样例1:234输出样例1:BBSSS1234输入样例2:23输出样例2:SS123#include #include原创 2017-04-14 13:24:32 · 208 阅读 · 0 评论 -
PAT刷题:1014. Waiting in Line (30)
本题要注意如下几点:1、从17:00前就已经开始服务的,虽然最终的服务时间超过五点,也不是Sorry,而只有从五点之后才会被开始服务的,会是Sorry。这个很关键,不然会有通不过的case。开始服务的时间==17:00的也不行。2、每个顾客进入到一个队伍之后,就不能再离开这个队伍,即使其他队伍中已经没有人了,也只能等当前队伍前面的人结束之后在本队伍接受服务。3、要找出人数最原创 2017-10-22 23:16:38 · 493 阅读 · 0 评论 -
1026. Table Tennis (30)
最后一个case通过不了,超时,有没有哪些大神帮我优化一下,让我通过A table tennis club has N tables available to the public. The tables are numbered from 1 to N. For any pair of players, if there are some tables open when they ar原创 2017-10-27 19:22:02 · 229 阅读 · 0 评论 -
1029. 旧键盘(20)
旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现。现在给出应该输入的一段文字、以及实际被输入的文字,请你列出肯定坏掉的那些键。输入格式:输入在2行中分别给出应该输入的文字、以及实际被输入的文字。每段文字是不超过80个字符的串,由字母A-Z(包括大、小写)、数字0-9、以及下划线“_”(代表空格)组成。题目保证2个字符串均非空。输出格式:按照发现顺序,原创 2017-05-16 20:45:34 · 353 阅读 · 0 评论 -
查验身份证
一个合法的身份证号码由17位地区、日期编号和顺序编号加1位校验码组成。校验码的计算规则如下:首先对前17位数字加权求和,权重分配为:{7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};然后将计算的和对11取模得到值Z;最后按照以下关系对应Z值与校验码M的值:Z:0 1 2 3 4 5 6 7 8 9 10M:1 0 X 9 8 7 6 5 4 3 2原创 2017-06-18 20:26:04 · 361 阅读 · 0 评论 -
挖掘机技术哪家强
为了用事实说明挖掘机技术到底哪家强,PAT组织了一场挖掘机技能大赛。现请你根据比赛结果统计出技术最强的那个学校。输入格式:输入在第1行给出不超过105的正整数N,即参赛人数。随后N行,每行给出一位参赛者的信息和成绩,包括其所代表的学校的编号(从1开始连续编号)、及其比赛成绩(百分制),中间以空格分隔。输出格式:在一行中给出总得分最高的学校的编号、及其总分,中间以空格原创 2017-06-18 21:35:32 · 217 阅读 · 0 评论 -
BM算法
using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace ConsoleApplication1{ class Program { static int BmSerach(byte[] source, byte[] templa转载 2016-10-26 18:40:28 · 618 阅读 · 0 评论 -
卡拉兹(Callatz)猜想
卡拉兹(Callatz)猜想:对任何一个自然数n,如果它是偶数,那么把它砍掉一半;如果它是奇数,那么把(3n+1)砍掉一半。这样一直反复砍下去,最后一定在某一步得到n=1。卡拉兹在1950年的世界数学家大会上公布了这个猜想,传说当时耶鲁大学师生齐动员,拼命想证明这个貌似很傻很天真的命题,结果闹得学生们无心学业,一心只证(3n+1),以至于有人说这是一个阴谋,卡拉兹是在蓄意延缓美国数学界教学原创 2017-04-14 08:11:48 · 8677 阅读 · 1 评论