
PAT
Vik1ll
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
PAT练习 采药
描述辰辰是个天资聪颖的孩子,他的梦想是成为世界上最伟大的医师。为此,他想拜附近最有威望的医师为师。医师为了判断他的资质,给他出了一个难题。医 师把他带到一个到处都是草药的山洞里对他说:“孩子,这个山洞里有一些不同的草药,采每一株都需要一些时间,每一株也有它自身的价值。我会给你一段时间, 在这段时间里,你可以采到一些草药。如果你是一个聪明的孩子,你应该可以让采到的草药的总价值最大。”如果你是辰辰,你能完成这个任务吗?【输入 】第 一行有两个整数T(1 <= T <= 10.原创 2021-04-06 18:48:38 · 147 阅读 · 0 评论 -
PAT练习 装箱问题
【问题描述】有一个箱子的容量为V(V为正整数,且满足0≤V≤20000),同时有n件物品(0的体积值为正整数。要求从n件物品中,选取若干装入箱内,使箱子的剩余空间最小。输入:1行整数,第1个数表示箱子的容量,第2个数表示有n件物品,后面n个数分别表示这n件物品各自的体积。输出:1个整数,表示箱子剩余空间。【输入输出样例】输入:24 6 8 3 12 7 9 7输出:0C++实现//// main.cpp// AN11.7-A///...原创 2021-04-06 17:48:01 · 227 阅读 · 1 评论 -
PAT练习 最大连续子序列
Description给定K个整数的序列{N1,N2,...,NK},其任意连续子序列可表示为{Ni,Ni+1,...,Nj},其中1<=i<=j<=K。最大连续子序列是所有连续子序列中元素和最大的一个,例如给定序列{-2,11,-4,13,-5,-2},其最大连续子序列为{11,-4,13},最大和为20。现在增加一个要求,即还需要输出该子序列的第一个和最后一个元素。Input测试输入包含若干测试用例,每个测试用例占2行...原创 2021-03-31 19:04:52 · 217 阅读 · 0 评论 -
PAT练习 Fibonacci
DescriptionThe Fibonacci Numbers{0,1,1,2,3,5,8,13,21,34,55...} are defined by the recurrence:F0=0 F1=1 Fn=Fn-1+Fn-2,n>=2Write a program to calculate the Fibonacci Numbers.InputEach casecontains a number n and you are expected to calculate Fn....原创 2021-03-30 19:40:43 · 233 阅读 · 0 评论 -
PAT练习 复原二叉树
Description小明在做数据结构的作业,其中一题是给你一棵二叉树的前序遍历和中序遍历结果,要求你写出这棵二叉树的后序遍历结果。Input输入包含多组测试数据。每组输入包含两个字符串,分别表示二叉树的前序遍历和中序遍历结果。每个字符串由不重复的大写字母组成。Output对于每组输入,输出对应的二叉树的后续遍历结果。Sample InputDBACEGF ABCDEFGBCAD CBADSample OutputACBFGEDCDABC++实现//原创 2021-03-29 17:23:23 · 193 阅读 · 0 评论 -
PAT练习 a+b
PAT练习 a+bDescription实现一个加法器,使其能够输出a+b的值。Input输入包括两个数a和b,其中a和b的位数不超过1000位。Output可能有多组测试数据,对于每组数据,输出a+b的值。Sample Input6 82000000000 30000000000000000000Sample Output1430000000002000000000C++实现#include <stdio.h>#include &l原创 2020-09-12 14:39:03 · 169 阅读 · 0 评论 -
PAT练习 约数的个数
PAT练习 约数的个数Description输入n个整数,依次输出每个数的约数的个数。Input输入的第一行为N,即数组的个数(N<=1000)接下来的1行包括N个整数,其中每个数的范围为(1<=Num<=1000000000)当N=0时输入结束。Output可能有多组输入数据,对于每组输入数据,输出N行,其中每一行对应上面的一个数的约数的个数。Sample Input61 4 6 8 10 120Sample Output134原创 2020-09-12 11:33:04 · 177 阅读 · 0 评论 -
PAT练习 完数
PAT练习 完数Description 求1-n内的完数,所谓的完数是这样的数,它的所有因子相加等于它自身,比如6有3个因子1,2,3,1+2+3=6,那么6是完数。即完数是等于其所有因子相加和的数。Input 测试数据有多组,输入n,n数据范围不大。Output 对于每组输入,请输出1-n内所有的完数。如有案例输出有多个数字,用空格隔开,输出最后不要有多余的空格。Sample Input6Sample Output6C++实现#inc...原创 2020-09-12 10:14:36 · 175 阅读 · 0 评论 -
PAT练习 Goldbach‘s Conjecture
PAT练习 Goldbach's ConjectureDescriptionGoldbach's Conjecture: For any even number n greater than or equal to 4, there exists at least one pair of prime numbers p1 and p2 such that n = p1 + p2.This conjecture has not been proved nor refused yet. No one.原创 2020-09-11 21:31:34 · 158 阅读 · 0 评论 -
PAT练习 素数
PAT练习 素数Description输入一个整数n(2<=n<=10000),要求输出所有从1到这个整数之间(不包括1和这个整数)个位为1的素数,如果没有则输出-1。Input输入有多组数据。每组一行,输入n。Output输出所有从1到这个整数之间(不包括1和这个整数)个位为1的素数(素数之间用空格隔开,最后一个素数后面没有空格),如果没有则输出-1。Sample Input70Sample Output11 31 41 61C++实现#原创 2020-09-11 20:28:26 · 154 阅读 · 0 评论 -
PAT练习 Least Common Multiple
PAT练习 Least Common MultipleDescriptionThe least common multiple (LCM) of a set of positive integers is the smallest positive integer which is divisible by all the numbers in the set. For example, the LCM of 5, 7 and 15 is 105.InputInput will consis原创 2020-09-11 19:12:07 · 95 阅读 · 0 评论 -
PAT练习 多项式的值
PAT练习 多项式的值Description实现一个多项式的类(a+b*x+c*x^2+d*x^3+...+),要求输入该多项式的系数和x的值后打印出这个多项式的值。Input输入第一行为样例数m,对于每个样例,第一行为多项式最高项次数n,接下来n+1个整数表示每项系数,最后一个整数x,n不超过10。Output输出m行,表示个多项式代入x后的值。Sample Input121 2 32Sample Output17C++实现#include原创 2020-09-11 09:59:11 · 200 阅读 · 0 评论 -
PAT练习 百鸡问题
PAT练习 百鸡问题Description用小于等于n元去买100只鸡,大鸡5元/只,小鸡3元/只,还有1/3元每只的一种小鸡,分别记为x只,y只,z只。编程求解x,y,z所有可能解。Input测试数据有多组,输入n。Output对于每组输入,请输出x,y,z所有可行解,按照x,y,z依次增大的顺序输出。Sample Input45Sample Outputx=0,y=0,z=100x=0,y=1,z=99x=0,y=2,z=98x=0,y=3,z=97x原创 2020-09-10 19:53:22 · 178 阅读 · 0 评论 -
PAT练习 反序数
PAT练习 反序数Description设N是一个四位数,它的9倍恰好是其反序数(例如:1234的反序数是4321)求N的值Input程序无任何输入数据。Output输出题目要求的四位数,如果结果有多组,则每组结果之间以回车隔开。C++实现#include <iostream>using namespace std;int main(){ int N,nine_times_N; for(int i=0;i<10;i++){原创 2020-09-10 16:04:37 · 137 阅读 · 0 评论 -
PAT练习 守形数
PAT练习 守形数Description守形数是这样一种整数,它的平方的低位部分等于它本身。比如25的平方是625,低位部分是25,因此25是一个守形数。编一个程序,判断N是否为守形数。Input输入包括1个整数N,2<=N<100。Output可能有多组测试数据,对于每组数据,输出"Yes!”表示N是守形数。输出"No!”表示N不是守形数。Sample Input611Sample OutputYes!No!C++实现#inc原创 2020-09-10 15:49:57 · 129 阅读 · 0 评论 -
PAT练习 快速排序 qsort [2*]
PAT练习 快速排序 qsort [2*]Description输入n个整数,用快速排序的方法进行排序Input第一行数字n 代表接下来有n个整数接下来n行,每行一个整数Output升序输出排序结果每行一个数据Sample Input51218141316 Sample Output1213141618 Hintn<=5000每个数据<=5000c++实现#include <stdio.h>...原创 2020-08-22 10:59:55 · 211 阅读 · 0 评论 -
PAT练习 基础排序III:归并排序
PAT练习 基础排序III:归并排序Description归并排序是一个时间复杂度为O(nlogn)的算法,对于大量数据远远优于冒泡排序与插入排序。这是一道排序练习题,数据量较大,请使用归并排序完成。Input第一行一个数字n,代表输入的组数其后每组第一行输入一个数字m,代表待排序数字的个数其后m行每行一个数据,大小在1~100000之间,互不相等,最多有10万个数据。Output升序输出排好序的数据,每行一个数字Sample Input110109.原创 2020-08-22 10:35:30 · 129 阅读 · 0 评论 -
PAT练习 查找
PAT练习 查找Description输入数组长度 n输入数组 a[1...n]输入查找个数m输入查找数字b[1...m]输出 YES or NO 查找有则YES 否则NO 。Input输入有多组数据。每组输入n,然后输入n个整数,再输入m,然后再输入m个整数(1<=m<=n<=100)。Output如果在n个数组中输出YES否则输出NO。Sample Input63 2 5 4 7 823 6Sample Outp...原创 2020-08-18 21:58:16 · 128 阅读 · 0 评论 -
PAT练习 打印极值点下标
PAT练习 打印极值点下标Description在一个整数数组上,对于下标为i的整数,如果它大于所有它相邻的整数,或者小于所有它相邻的整数,则称为该整数为一个极值点,极值点的下标就是i。Input每个案例的输入如下:有2×n+1行输入:第一行是要处理的数组的个数n;对其余2×n行,第一行是此数组的元素个数k(4<k<80),第二行是k个整数,每两个整数之间用空格分隔。Output每个案例输出不多于n行:每行对应于相应数组的所有极值点下标值,下标值之间用空格分隔,如果原创 2020-08-18 21:13:08 · 125 阅读 · 0 评论 -
PAT练习 找x
PAT练习 找xDescription输入一个数n,然后输入n个数值各不相同,再输入一个值x,输出这个值在这个数组中的下标(从0开始,若不在数组中则输出-1)。Input测试数据有多组,输入n(1<=n<=200),接着输入n个数,然后输入x。Output对于每组输入,请输出结果。Sample Input41 2 3 43Sample Output2C++实现简单的二分搜索#include <stdio.h>#inclu原创 2020-08-18 20:30:21 · 115 阅读 · 0 评论 -
PAT练习 找零钱
PAT练习 找零钱Description小智去超市买东西,买了不超过一百块的东西。收银员想尽量用少的纸币来找钱。纸币面额分为50 20 10 5 1 五种。请在知道要找多少钱n给小明的情况下,输出纸币数量最少的方案。 1<=n<=99;Input有多组数据 1<=n<=99;Output对于每种数量不为0的纸币,输出他们的面值*数量,再加起来输出Sample Input2532Sample Output20*1+5*120*1+10.原创 2020-08-17 17:39:28 · 453 阅读 · 0 评论 -
PAT练习 FatMouse‘s Trade
PAT练习 FatMouse's TradeDescriptionFatMouse prepared M pounds of cat food, ready to trade with the cats guarding the warehouse containing his favorite food, JavaBean.The warehouse has N rooms. The i-th room contains J[i] pounds of JavaBeans and requires原创 2020-08-16 17:26:47 · 132 阅读 · 0 评论 -
PAT练习 Repair the Wall
PAT练习 Repair the WallDescriptionLong time ago , Kitty lived in a small village. The air was fresh and the scenery was very beautiful. The only thing that troubled her is the typhoon.When the typhoon came, everything is terrible. It kept blowing an.原创 2020-08-14 17:17:14 · 112 阅读 · 0 评论 -
PAT练习 出租车费
PAT练习 出租车费Description某市出租车计价规则如下:起步4公里10元,即使你的行程没超过4公里;接下来的4公里,每公里2元;之后每公里2.4元。行程的最后一段即使不到1公里,也当作1公里计费。一个乘客可以根据行程公里数合理安排坐车方式来使自己的打车费最小。例如,整个行程为16公里,乘客应该将行程分成长度相同的两部分,每部分花费18元,总共花费36元。如果坐出租车一次走完全程要花费37.2元。现在给你整个行程的公里数,请你计算坐出租车的最小花费。Input输入包含多组.原创 2020-07-27 23:59:01 · 414 阅读 · 0 评论 -
PAT练习 八皇后
PAT练习 八皇后Description会下国际象棋的人都很清楚:皇后可以在横、竖、斜线上不限步数地吃掉其他棋子。如何将8个皇后放在棋盘上(有8 * 8个方格),使它们谁也不能被吃掉!这就是著名的八皇后问题。对于某个满足要求的8皇后的摆放方法,定义一个皇后串a与之对应,即a=b1b2...b8,其中bi为相应摆法中第i行皇后所处的列数。已经知道8皇后问题一共有92组解(即92个不同的皇后串)。给出一个数b,要求输出第b个串。串的比较是这样的:皇后串x置于皇后串y之前,当且仅当将x视为整数..原创 2020-07-25 19:40:26 · 191 阅读 · 0 评论 -
PAT练习 神奇的口袋
PAT练习 神奇的口袋Description有一个神奇的口袋,总的容积是40,用这个口袋可以变出一些物品,这些物品的总体积必须是40。John现在有n个想要得到的物品,每个物品的体积分别是a1,a2……an。John可以从这些物品中选择一些,如果选出的物体的总体积是40,那么利用这个神奇的口袋,John就可以得到这些物品。现在的问题是,John有多少种不同的选择物品的方式。Input输入的第一行是正整数n (1 <= n <= 20),表示不同的物品的数目。接下...原创 2020-07-25 17:39:56 · 139 阅读 · 0 评论 -
PAT练习 数列
PAT练习 数列Description编写一个求斐波那契数列的递归函数,输入n值,使用该递归函数,输出如下图形(参见样例)。Input输入第一行为样例数m,接下来有m行每行一个整数n,n不超过10。Output对应每个样例输出要求的图形(参见样例格式)。Sample Input16Sample Output 0 0 1 1 0 1 1 2 3 0 1 1 2 3 5 8 0 1 1 2 3 ...原创 2020-07-23 19:09:57 · 104 阅读 · 0 评论 -
PAT练习 吃糖果
PAT练习 吃糖果Description名名的妈妈从外地出差回来,带了一盒好吃又精美的巧克力给名名(盒内共有 N 块巧克力,20 > N >0)。妈妈告诉名名每天可以吃一块或者两块巧克力。假设名名每天都吃巧克力,问名名共有多少种不同的吃完巧克力的方案。例如:如果N=1,则名名第1天就吃掉它,共有1种方案;如果N=2,则名名可以第1天吃1块,第2天吃1块,也可以第1天吃2块,共有2种方案;如果N=3,则名名第1天可以吃1块,剩2块,也可以第1天吃2块剩1块,所以名名共有2+1=原创 2020-07-22 18:16:10 · 113 阅读 · 0 评论 -
PAT练习 String Subtraction
PAT练习 String SubtractionDescriptionGiven two strings S1and S2, S = S1- S2is defined to be the remaining string after taking all the characters in S2from S1. Your task is simply to calculate S1- S2for any given strings. However, it might not be tha...原创 2020-07-18 20:18:30 · 186 阅读 · 0 评论 -
PAT练习 Be Unique
PAT练习 Be UniqueDescriptionBeing unique is so important to people on Mars that even their lottery is designed in a unique way. The rule of winning is simple: one bets on a number chosen from [1, 104]. The first one who bets on a unique number wins. For原创 2020-07-18 19:19:03 · 213 阅读 · 0 评论 -
PAT练习 分组统计
PAT练习 分组统计Description先输入一组数,然后输入其分组,按照分组统计出现次数并输出,参见样例。Input输入第一行表示样例数m,对于每个样例,第一行为数的个数n,接下来两行分别有n个数,第一行有n个数,第二行的n个数分别对应上一行每个数的分组,n不超过100。Output输出m行,格式参见样例,按从小到大排。Sample Input173 2 3 8 8 2 31 2 3 2 1 3 1Sample Output1={2=0,3=2,8=1}原创 2020-07-18 18:43:01 · 212 阅读 · 0 评论 -
PAT练习 谁是你的潜在朋友
PAT练习 谁是你的潜在朋友Description “臭味相投”——这是我们描述朋友时喜欢用的词汇。两个人是朋友通常意味着他们存在着许多共同的兴趣。然而作为一个宅男,你发现自己与他人相互了解的机会并不太多。幸运的是,你意外得到了一份北大图书馆的图书借阅记录,于是你挑灯熬夜地编程,想从中发现潜在的朋友。首先你对借阅记录进行了一番整理,把N个读者依次编号为1,2,…,N,把M本书依次编号为1,2,…,M。同时,按照“臭味相投”的原则,和你喜欢读同一本书的人,就是你的潜在朋友。你现...原创 2020-07-14 23:00:06 · 170 阅读 · 0 评论 -
PAT练习 小白鼠排队
PAT练习 小白鼠排队DescriptionN只小白鼠(1 <= N <= 100),每只鼠头上戴着一顶有颜色的帽子。现在称出每只白鼠的重量,要求按照白鼠重量从大到小的顺序输出它们头上帽子的颜色。帽子的颜色用“red”,“blue”等字符串来表示。不同的小白鼠可以戴相同颜色的帽子。白鼠的重量用整数表示。Input多案例输入,每个案例的输入第一行为一个整数N,表示小白鼠的数目。下面有N行,每行是一只白鼠的信息。第一个为不大于100的正整数,表示白鼠的重量,;第...原创 2020-07-14 00:54:09 · 182 阅读 · 0 评论 -
PAT练习 Problem B
PAT练习 Problem BDescription请写一个程序,对于一个m行m列的(1<m<10)的方阵,求其每一行,每一列及主对角线元素之和,最后按照从大到小的顺序依次输出。Input共一组数据,输入的第一行为一个正整数,表示m,接下来的m行,每行m个整数表示方阵元素。Output从大到小排列的一行整数,每个整数后跟一个空格,最后换行。Sample Input415 8 -2 631 24 18 71-3 -9 27 1317 21 38 69原创 2020-07-14 00:31:57 · 165 阅读 · 0 评论 -
PAT练习 字符串内排序
PAT练习 字符串内排序Description输入一个字符串,长度小于等于200,然后将输出按字符顺序升序排序后的字符串。Input测试数据有多组,输入字符串。Output对于每组输入,输出处理后的结果。Sample InputtianqinSample OutputaiinnqtHINT注意输入的字符串中可能有空格。C++实现#include <stdio.h>#原创 2020-07-13 23:28:32 · 165 阅读 · 0 评论 -
PAT练习 EXCEL排序
PAT练习 EXCEL排序Excel可以对一组纪录按任意指定列排序。现请你编写程序实现类似功能。 对每个测试用例,首先输出1行“Case i:”,其中 i 是测试用例的编号(从1开始)。随后在 N 行中输出按要求排序后的结果,即:当 C=1 时,按学号递增排序;当 C=2时,按姓名的非递减字典序排序;当 C=3 时,按成绩的非递减排序。当若干学生具有相同姓名或者相同成绩时,则按他们的学号递增排序。输入描述: 测试输入包含若干测试用例。每个测试用例的第1行包含两个整数 N (...原创 2020-07-13 01:43:48 · 148 阅读 · 0 评论 -
PAT练习 特殊排序
PAT练习 特殊排序Description输入一系列整数,将其中最大的数挑出,并将剩下的数进行排序。Input输入第一行包括1个整数N,1<=N<=1000,代表输入数据的个数。接下来的一行有N个整数。Output可能有多组测试数据,对于每组数据,第一行输出一个整数,代表N个整数中的最大值,并将此值从数组中去除,将剩下的数进行排序。第二行将排序的结果输出。Sample Input5 3 2 4 1.原创 2020-07-12 23:13:11 · 192 阅读 · 0 评论 -
PAT练习 排序
PAT练习 排序Description对输入的n个数进行排序并输出。Input输入的第一行包括一个整数n(1<=n<=100)。接下来的一行包括n个整数。Output可能有多组测试数据,对于每组数据,将排序后的n个整数输出,每个数后面都有一个空格。每组测试数据的结果占一行。Sample Input55 4 3 1 2Sample Output1 2 3 4 5 C++实现#include <iostream>#includ.原创 2020-07-12 22:44:51 · 197 阅读 · 0 评论 -
PAT练习 字符串去特定字符
PAT练习 字符串去特定字符Description输入字符串s和字符c,要求去掉s中所有的c字符,并输出结果。Input测试数据有多组,每组输入字符串s和字符c。Output对于每组输入,输出去除c字符后的结果。Sample InputgoaodaSample OutputgoodC++实现scanf()后面要加上一行getchar()用于接收换行符,防止被下一次循环的gets()读入。#include <iostream>#incl原创 2020-07-12 21:17:09 · 406 阅读 · 0 评论 -
PAT练习 单词替换
PAT练习 单词替换Description输入一个字符串,以回车结束(字符串长度<=100)。该字符串由若干个单词组成,单词之间用一个空格隔开,所有单词区分大小写。现需要将其中的某个单词替换成另一个单词,并输出替换之后的字符串。Input多组数据。每组数据输入包括3行,第1行是包含多个单词的字符串 s,第2行是待替换的单词a,(长度<=100)第3行是a将被替换的单词b。(长度<=100)s, a, b 最前面和最后面都没有空格。Output每个测试原创 2020-07-09 22:29:17 · 214 阅读 · 0 评论