编程练习
文章平均质量分 54
Peter_2017
Android开发工程师
展开
-
算法之路-圆柱体面积
圆柱体的面积分为三个部分,侧面积,上,下面积组成。由于上下面积一样。故圆柱体的面积=底面积x2+侧面积S=2*π*r*r+2*π*r*h;#include "stdafx.h"#include "math.h"#include "iostream"using namespace std;int main(int argc,int *argc[]){ const原创 2017-06-19 16:21:12 · 533 阅读 · 0 评论 -
PAT练习-月饼
题目描述月饼是中国人在中秋佳节时吃的一种传统食品,不同地区有许多不同风味的月饼。现给定所有种类月饼的库存量、总售价、以及市场的最大需求量,请你计算可以获得的最大收益是多少。注意:销售时允许取出一部分库存。样例给出的情形是这样的:假如我们有3种月饼,其库存量分别为18、15、10万吨,总售价分别为75、72、45亿元。如果市场的最大需求量只有20万吨,那么我们最大收益策略应该是卖原创 2017-06-22 14:50:35 · 237 阅读 · 0 评论 -
PAT练习-个位数统计
题目描述给定一个k位整数N = dk-1*10k-1 + ... + d1*101 + d0 (0ik-1>0),请编写程序统计每种不同的个位数字出现的次数。例如:给定N = 100311,则有2个0,3个1,和1个3。输入描述:每个输入包含1个测试用例,即一个不超过1000位的正整数N。输出描述:对N中每一种不同的个位数字,以D:M的格式在一行中输出该位数字D及其原创 2017-06-22 15:52:11 · 350 阅读 · 0 评论 -
PAT练习-D进制A+B
题目描述输入两个非负10进制整数A和B(30-1),输出A+B的D (1 输入描述:输入在一行中依次给出3个整数A、B和D。输出描述:输出A+B的D进制数。输入例子:123 456 8输出例子:1103解题思路:考查栈的使用。#include#includeusing namespace std;int main()原创 2017-06-22 16:54:04 · 245 阅读 · 0 评论 -
PAT练习-组个最小数
题目描述给定数字0-9各若干个。你可以以任意顺序排列这些数字,但必须全部使用。目标是使得最后得到的数尽可能小(注意0不能做首位)。例如:给定两个0,两个1,三个5,一个8,我们得到的最小的数就是10015558。现给定数字,请编写程序输出能够组成的最小的数。输入描述:每个输入包含1个测试用例。每个测试用例在一行中给出10个非负整数,顺序表示我们拥有数字0、数字1、……数原创 2017-06-23 10:52:39 · 564 阅读 · 0 评论 -
PAT练习-科学计数法
题目描述科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式[+-][1-9]"."[0-9]+E[+-][0-9]+,即数字的整数部分只有1位,小数部分至少有1位,该数字及其指数部分的正负号即使对正数也必定明确给出。现以科学计数法的格式给出实数A,请编写程序按普通数字表示法输出A,并保证所有有效位都被保留。输入描述:每个输入包含1个测试用例,即原创 2017-06-23 15:14:40 · 388 阅读 · 0 评论 -
PAT练习-程序运行时间
题目描述要获得一个C语言程序的运行时间,常用的方法是调用头文件time.h,其中提供了clock()函数,可以捕捉从程序开始运行到clock()被调用时所耗费的时间。这个时间单位是clock tick,即“时钟打点”。同时还有一个常数CLK_TCK,给出了机器时钟每秒所走的时钟打点数。于是为了获得一个函数f的运行时间,我们只要在调用f之前先调用clock(),获得一个时钟打点数C1;在原创 2017-06-23 15:35:39 · 309 阅读 · 0 评论 -
PAT练习-人口普查
题目描述某城镇进行人口普查,得到了全体居民的生日。现请你写个程序,找出镇上最年长和最年轻的人。这里确保每个输入的日期都是合法的,但不一定是合理的——假设已知镇上没有超过200岁的老人,而今天是2014年9月6日,所以超过200岁的生日和未出生的生日都是不合理的,应该被过滤掉。输入描述:输入在第一行给出正整数N,取值在(0, 105];随后N行,每行给出1个人的姓名(由不原创 2017-07-03 20:09:02 · 361 阅读 · 0 评论 -
PAT练习-反转链表
题目描述给定一个常数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),即要求反转的子链结点的原创 2017-06-24 15:40:59 · 303 阅读 · 0 评论 -
PAT练习-数字黑洞
题目描述给定任一个各位数字不完全相同的4位正整数,如果我们先把4个数字按非递增排序,再按非递减排序,然后用第1个数字减第2个数字,将得到一个新的数字。一直重复这样做,我们很快会停在有“数字黑洞”之称的6174,这个神奇的数字也叫Kaprekar常数。例如,我们从6767开始,将得到7766 - 6677 = 10899810 - 0189 = 96219621 -原创 2017-06-22 11:11:19 · 360 阅读 · 0 评论 -
PAT练习-石头剪刀布
题目描述大家应该都会玩“锤子剪刀布”的游戏:现给出两人的交锋记录,请统计双方的胜、平、负次数,并且给出双方分别出什么手势的胜算最大。输入描述:输入第1行给出正整数N(<=105),即双方交锋的次数。随后N行,每行给出一次交锋的信息,即甲、乙双方同时给出的的手势。C代表“锤子”、J代表“剪刀”、B代表“布”,第1个字母代表甲方,第2个代表乙方,中间有1个空格。输出原创 2017-06-22 09:18:52 · 795 阅读 · 0 评论 -
PAT练习-A除以B
题目描述本题要求计算A/B,其中A是不超过1000位的正整数,B是1位正整数。你需要输出商数Q和余数R,使得A = B * Q + R成立。输入描述:输入在1行中依次给出A和B,中间以1空格分隔。输出描述:在1行中依次输出Q和R,中间以1空格分隔。输入例子:123456789050987654321 7输出例子:176366841501410原创 2017-06-21 15:36:47 · 2287 阅读 · 1 评论 -
算法之路-三位数反转
1.需求:输入一个三位数,分离出它的百位、十位和个位,反转输出其值,要求反转的时候如果遇到0时,需要输出0。例如:输入:520,输出:025;#include “stdafx.h”#include "iostream"using namespace std;int main ( int argc,char *argv[]){ int num,a,b,c;原创 2017-06-19 16:23:18 · 1530 阅读 · 0 评论 -
算法之路-鸡兔同笼
已知鸡兔的总数量为n,总腿数是m。输入n,m,依次输出鸡的数目和兔的数目,如果没有正确答案的,请输出No answer.输入样例:6 20输出样例:2 4输入样例:6 21输出样例:no answer分析:n,m为整数,可以把鸡的数量设为a,兔的数量设为b。那么有a=(4*n-m)/2,b=n-a;由于a+2b=m/2;所以m/2必须是整数,那么m%2也就不可能原创 2017-06-19 16:24:21 · 782 阅读 · 0 评论 -
PAT练习-数字处理
题目描述给定一系列正整数,请按要求对数字进行分类,并输出以下5个数字:A1 = 能被5整除的数字中所有偶数的和;A2 = 将被5除后余1的数字按给出顺序进行交错求和,即计算n1-n2+n3-n4...;A3 = 被5除后余2的数字的个数;A4 = 被5除后余3的数字的平均数,精确到小数点后1位;A5 = 被5除后余4的数字中最大数字。输入描述:每个原创 2017-06-19 16:26:17 · 371 阅读 · 0 评论 -
PAT练习-A+B和C
题目描述给定区间[-2的31次方, 2的31次方]内的3个整数A、B和C,请判断A+B是否大于C。输入描述:输入第1行给出正整数T(<=10),是测试用例的个数。随后给出T组测试用例,每组占一行,顺序给出A、B和C。整数间以空格分隔。输出描述:对每组测试用例,在一行中输出“Case #X: true”如果A+B>C,否则输出“Case #X: false”,其中X是测试用例原创 2017-06-19 16:36:49 · 400 阅读 · 0 评论 -
PAT练习-数素数
题目描述令Pi表示第i个素数。现任给两个正整数M 输入描述输入在一行中给出M和N,其间以空格分隔。输出描述:输出从PM到PN的所有素数,每10个数字占1行,其间以空格分隔,但行末不得有多余空格。输入例子:5 27输出例子:11 13 17 19 23 29 31 37 41 4347 53 59 61 67 71 73 79 83 8原创 2017-06-19 16:39:01 · 431 阅读 · 0 评论 -
PAT练习- 福尔摩斯的约会
题目描述大侦探福尔摩斯接到一张奇怪的字条:“我们约会吧! 3485djDkxh4hhGE 2984akDfkkkkggEdsb s&hgsfdk d&Hyscvnm”。大侦探很 快就明白了,字条上奇怪的乱码实际上就是约会的时间“星期四 14:04”,因为前面两字符串中第1对相同的大写英文字母(大小写有区分)是 第4个字母'D',代表星期四;第2对相同的字符是'E',那是第5个英文字母,原创 2017-06-20 19:23:04 · 337 阅读 · 0 评论 -
PAT练习-德才论
题目描述宋代史学家司马光在《资治通鉴》中有一段著名的“德才论”:“是故才德全尽谓之圣人,才德兼亡谓之愚人,德胜才谓之君子,才胜德谓之小人。凡取人之术,苟不得圣人,君子而与之,与其得小人,不若得愚人。”现给出一批考生的德才分数,请根据司马光的理论给出录取排名。输入描述:输入第1行给出3个正整数,分别为:N(5),即考生总数;L(>=60),为录取最低分数线,即德分和才分均原创 2017-06-21 11:30:57 · 277 阅读 · 0 评论 -
PAT练习-部分A+B
题目描述正整数A的“DA(为1位整数)部分”定义为由A中所有DA组成的新整数PA。例如:给定A = 3862767,DA = 6,则A的“6部分”PA是66,因为A中有2个6。现给定A、DA、B、DB,请编写程序计算PA + PB。输入描述:输入在一行中依次给出A、DA、B、DB,中间以空格分隔,其中0 10。输出描述:在一行中输出PA + PB的值。原创 2017-06-21 14:03:43 · 320 阅读 · 0 评论 -
PAT练习-旧键盘
题目描述旧键盘上坏了几个键,于是在敲一段文字的时候,对应的字符就不会出现。现在给出应该输入的一段文字、以及实际被输入的文字,请你列出肯定坏掉的那些键。输入描述:输入在2行中分别给出应该输入的文字、以及实际被输入的文字。每段文字是不超过80个字符的串,由字母A-Z(包括大、小写)、数字0-9、以及下划线“_”(代表空格)组成。题目保证2个字符串均非空。输出描述:原创 2017-07-04 15:49:20 · 294 阅读 · 0 评论