划拳是古老中国酒文化的一个有趣的组成部分.酒桌上两人划拳的方法为:每人口中喊出一个数字,同时用手比划出一个数字.如果谁比划出的数字正好等于两人喊出的数字之和,谁就赢了,输家罚一杯酒.两人同赢或两人同输则继续下一轮,直到唯一的赢家出现. 下面给出甲.乙两人的划拳记录,请你统计他们最后分别喝了多少杯酒. 输入格式: 输入第一行先给出一个正整数 N(≤),随后 N 行,每行给出一轮划拳的记录,格式为: 甲喊 甲划 乙喊 乙划 其中喊是喊出的数字,划是划出的数字,均为不超过 100 的正整数(两只手一起…
划拳是古老中国酒文化的一个有趣的组成部分.酒桌上两人划拳的方法为:每人口中喊出一个数字,同时用手比划出一个数字.如果谁比划出的数字正好等于两人喊出的数字之和,谁就赢了,输家罚一杯酒.两人同赢或两人同输则继续下一轮,直到唯一的赢家出现. 下面给出甲.乙两人的划拳记录,请你统计他们最后分别喝了多少杯酒. 输入格式: 输入第一行先给出一个正整数 N(≤),随后 N 行,每行给出一轮划拳的记录,格式为: 甲喊 甲划 乙喊 乙划 其中喊是喊出的数字,划是划出的数字,均为不超过 100 的正整数(两只手一起…
划拳是古老中国酒文化的一个有趣的组成部分.酒桌上两人划拳的方法为:每人口中喊出一个数字,同时用手比划出一个数字.如果谁比划出的数字正好等于两人喊出的数字之和,谁就赢了,输家罚一杯酒.两人同赢或两人同输则继续下一轮,直到唯一的赢家出现. 下面给出甲.乙两人的划拳记录,请你统计他们最后分别喝了多少杯酒. 输入格式: 输入第一行先给出一个正整数 N(≤100),随后 N 行,每行给出一轮划拳的记录,格式为: 甲喊 甲划 乙喊 乙划 其中喊是喊出的数字,划是划出的数字,均为不超过 100 的正整数(两只…
一个合法的身份证号码由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 10 M:1 0 X 9 8 7 6 5 4 3 2   现在给定一些身份证号码,请你验证校验码的有效性,并输出有问题的号码. 输入格式: 输入第一行给出正整数N(≤10…
要获得一个 C 语言程序的运行时间,常用的方法是调用头文件 time.h,其中提供了 clock() 函数,可以捕捉从程序开始运行到 clock() 被调用时所耗费的时间.这个时间单位是 clock tick,即"时钟打点".同时还有一个常数 CLK_TCK,给出了机器时钟每秒所走的时钟打点数.于是为了获得一个函数 f 的运行时间,我们只要在调用 f 之前先调用 clock(),获得一个时钟打点数 C1:在 f 执行完成后再调用 clock(),获得另一个时钟打点数 C2:两次获得的时…
给定一个 k 位整数 N=dk−1​10k−1+⋯+d1​101+d0​ (0≤di​≤9, i=0,⋯,k−1, dk−1​>0),请编写程序统计每种不同的个位数字出现的次数.例如:给定 N=100311,则有 2 个 0,3 个 1,和 1 个 3. 输入格式: 每个输入包含 1 个测试用例,即一个不超过 1000 位的正整数 N. 输出格式: 对 N 中每一种不同的个位数字,以 D:M 的格式在一行中输出该位数字 D 及其在 N 中出现的次数 M.要求按 D 的升序输出. 输入样例: 10…
PAT (Basic Level) Practice (中文) 1050 螺旋矩阵 (25 分) 目录 PAT (Basic Level) Practice (中文) 1050 螺旋矩阵 (25 分) 题目描述 输入格式: 输出格式: 输入样例: 输出样例: 题目要求: 解题思路: 完整代码: 题目描述 本题要求将给定的 N 个正整数按非递增的顺序,填入"螺旋矩阵".所谓"螺旋矩阵",是指从左上角第 1 个格子开始,按顺时针螺旋方向填充. 要求矩阵的规模为 m 行…
PAT (Basic Level) Practice (中文)1078 字符串压缩与解压 (20 分) 凌宸1642 题目描述: 文本压缩有很多种方法,这里我们只考虑最简单的一种:把由相同字符组成的一个连续的片段用这个字符和片段中含有这个字符的个数来表示.例如 ccccc 就用 5c 来表示.如果字符没有重复,就原样输出.例如 aba 压缩后仍然是 aba. 解压方法就是反过来,把形如 5c 这样的表示恢复为 ccccc. 本题需要你根据压缩或解压的要求,对给定字符串进行处理.这里我们简单地假设…
PAT (Basic Level) Practice (中文)1070 结绳 (25 分) 凌宸1642 题目描述 给定一段一段的绳子,你需要把它们串成一条绳.每次串连的时候,是把两段绳子对折,再如下图所示套接在一起.这样得到的绳子又被当成是另一段绳子,可以再次对折去跟另一段绳子串连.每次串连后,原来两段绳子的长度就会减半. 给定N段绳子的长度,你需要找出它们能串成的绳子的最大长度. 输入格式: 每个输入包含 1 个测试用例.每个测试用例第 1 行给出正整数 N (2≤N≤10^4):第 2 行…
PAT (Basic Level) Practice (中文)1065 单身狗 (25 分) 凌宸1642 题目描述: "单身狗"是中文对于单身人士的一种爱称.本题请你从上万人的大型派对中找出落单的客人,以便给予特殊关爱. 输入格式: 输入第一行给出一个正整数 N(≤ 50 000),是已知夫妻/伴侣的对数:随后 N 行,每行给出一对夫妻/伴侣 --为方便起见,每人对应一个 ID 号,为 5 位数字(从00000到 99999),ID 间以空格分隔: 之后给出一个正整数 M(≤ 10…
PAT (Basic Level) Practice (中文)1055 集体照 (25 分) 凌宸1642 题目描述: 拍集体照时队形很重要,这里对给定的 N 个人 K 排的队形设计排队规则如下: 每排人数为 N/K(向下取整),多出来的人全部站在最后一排: 后排所有人的个子都不比前排任何人矮: 每排中最高者站中间(中间位置为 m/2+1,其中 m 为该排人数,除法向下取整): 每排其他人以中间人为轴,按身高非增序,先右后左交替入队站在中间人的两侧(例如5人身高为190.188.186.175.…
PAT (Basic Level) Practice (中文)1054 求平均值 (20 分) 题目描述 本题的基本要求非常简单:给定 N 个实数,计算它们的平均值.但复杂的是有些输入数据可能是非法的.一个"合法"的输入是 [−1000,1000] 区间内的实数,并且最多精确到小数点后 2 位.当你计算平均值的时候,不能把那些非法的数据算在内. 输入格式 输入第一行给出正整数 N(≤100).随后一行给出 N 个实数,数字间以一个空格分隔. 输出格式 对每个非法输入,在一行中输出 ER…
1046. 划拳(15) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 划拳是古老中国酒文化的一个有趣的组成部分.酒桌上两人划拳的方法为:每人口中喊出一个数字,同时用手比划出一个数字.如果谁比划出的数字正好等于两人喊出的数字之和,谁就赢了,输家罚一杯酒.两人同赢或两人同输则继续下一轮,直到唯一的赢家出现. 下面给出甲.乙两人的划拳记录,请你统计他们最后分别喝了多少杯酒. 输入格式: 输入第一行先给出一个正整数…
1046 划拳(15)(15 分) 划拳是古老中国酒文化的一个有趣的组成部分.酒桌上两人划拳的方法为:每人口中喊出一个数字,同时用手比划出一个数字.如果谁比划出的数字正好等于两人喊出的数字之和,谁就赢了,输家罚一杯酒.两人同赢或两人同输则继续下一轮,直到唯一的赢家出现. 下面给出甲.乙两人的划拳记录,请你统计他们最后分别喝了多少杯酒. 输入格式: 输入第一行先给出一个正整数N(<=100),随后N行,每行给出一轮划拳的记录,格式为: 甲喊 甲划 乙喊 乙划 其中"喊"是喊出的数字…
1046. 划拳(15) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 CHEN, Yue 划拳是古老中国酒文化的一个有趣的组成部分.酒桌上两人划拳的方法为:每人口中喊出一个数字,同时用手比划出一个数字.如果谁比划出的数字正好等于两人喊出的数字之和,谁就赢了,输家罚一杯酒.两人同赢或两人同输则继续下一轮,直到唯一的赢家出现. 下面给出甲.乙两人的划拳记录,请你统计他们最后分别喝了多少杯酒. 输入格式: 输入第一行先给出一个正整数…
PAT (Advanced Level) Practice 1027 Colors in Mars (20 分) 凌宸1642 题目描述: People in Mars represent the colors in their computers in a similar way as the Earth people. That is, a color is represented by a 6-digit number, where the first 2 digits are for R…
PAT (Advanced Level) Practice 1019 General Palindromic Number (20 分) 凌宸1642 题目描述: 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…
PAT (Advanced Level) Practice 1011 World Cup Betting (20 分) 凌宸1642 题目描述: With the 2010 FIFA World Cup running, football fans the world over were becoming increasingly excited as the best players from the best teams doing battles for the World Cup tro…
PAT (Advanced Level) Practice 1005 Spell It Right (20 分) 凌宸1642 题目描述: Given a non-negative integer N, your task is to compute the sum of all the digits of N, and output every digit of the sum in English. 译:给出一个非负整数 N , 你的任务是计算出 N 的每位数的和,并且用英语输出和的每一位数…
PAT (Advanced Level) Practice 1001 A+B Format (20 分) 凌宸1642 题目描述: Calculate a+b and output the sum in standard format -- that is, the digits must be separated into groups of three by commas (unless there are less than four digits). 译:计算 a + b 的和,并格式化…
给定一串长度不超过 1 的字符串,本题要求你将其中所有英文字母的序号(字母 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. 输入格式: 输入在一行中给出长度不超过 1.以回车结束的字符串. 输出格式: 在一行中先后输出 0 的个数和 1 的个数,其间以空格分隔…
划拳是古老中国酒文化的一个有趣的组成部分.酒桌上两人划拳的方法为:每人口中喊出一个数字,同时用手比划出一个数字.如果谁比划出的数字正好等于两人喊出的数字之和,谁就赢了,输家罚一杯酒.两人同赢或两人同输则继续下一轮,直到唯一的赢家出现. 下面给出甲.乙两人的划拳记录,请你统计他们最后分别喝了多少杯酒. 输入格式: 输入第一行先给出一个正整数N(<=100),随后N行,每行给出一轮划拳的记录,格式为: 甲喊 甲划 乙喊 乙划 其中"喊"是喊出的数字,"划"是划出的…
每个 PAT 考生在参加考试时都会被分配两个座位号,一个是试机座位,一个是考试座位.正常情况下,考生在入场时先得到试机座位号码,入座进入试机状态后,系统会显示该考生的考试座位号码,考试时考生需要换到考试座位就座.但有些考生迟到了,试机已经结束,他们只能拿着领到的试机座位号码求助于你,从后台查出他们的考试座位号码. 输入格式: 输入第一行给出一个正整数 N(≤),随后 N 行,每行给出一个考生的信息:准考证号 试机座位号 考试座位号.其中准考证号由 16 位数字组成,座位从 1 到 N 编号.输入…
1022 D进制的A+B 输入两个非负 10 进制整数 A 和 B (≤2^30^−1),输出 A+B 的 D (1<D≤10)进制数. 输入格式: 输入在一行中依次给出 3 个整数 A.B 和 D. 输出格式: 输出 A+B 的 D 进制数. 输入样例: 123 456 8 输出样例: 1103 代码: #include<stdio.h> int fun(int *arr,long long n,int D) { int t=0; while(n) { arr[t++]=n%D; n=…
1001 害死人不偿命的(3n+1)猜想 卡拉兹(Callatz)猜想: 对任何一个正整数 n,如果它是偶数,那么把它砍掉一半:如果它是奇数,那么把 (3n+1) 砍掉一半.这样一直反复砍下去,最后一定在某一步得到 n=1.卡拉兹在 1950 年的世界数学家大会上公布了这个猜想,传说当时耶鲁大学师生齐动员,拼命想证明这个貌似很傻很天真的命题,结果闹得学生们无心学业,一心只证 (3n+1),以至于有人说这是一个阴谋,卡拉兹是在蓄意延缓美国数学界教学与科研的进展…… 我们今天的题目不是证明卡拉兹猜想…
1023 组个最小数 给定数字 0-9 各若干个.你可以以任意顺序排列这些数字,但必须全部使用.目标是使得最后得到的数尽可能小(注意 0 不能做首位).例如:给定两个 0,两个 1,三个 5,一个 8,我们得到的最小的数就是 10015558. 现给定数字,请编写程序输出能够组成的最小的数. 输入格式: 输入在一行中给出 10 个非负整数,顺序表示我们拥有数字 0.数字 1.……数字 9 的个数.整数间用一个空格分隔.10 个数字的总个数不超过 50,且至少拥有 1 个非 0 的数字. 输出格式…
题目链接:https://pintia.cn/problem-sets/994805260223102976/problems/994805316250615808 #include <iostream> #include <cstdio> #include <string> #include <cstring> #include <algorithm> #include <stack> using namespace std; in…
题目链接:https://pintia.cn/problem-sets/994805260223102976/problems/994805318855278592 #include <iostream> #include <cstdio> #include <string> #include <cstring> #include <algorithm> #include <stack> using namespace std; in…
题目链接:https://pintia.cn/problem-sets/994805260223102976/problems/994805321640296448 #include <iostream> #include <cstdio> #include <string> #include <cstring> #include <algorithm> #include <stack> using namespace std; in…
题目链接:https://pintia.cn/problem-sets/994805260223102976/problems/994805324509200384 #include <iostream> #include <cstdio> #include <string> #include <cstring> #include <algorithm> #include <stack> using namespace std; ];…