天天练
Bee_Darker
不积跬步,无以至千里;
不积小流,无以成大海
展开
-
PAT乙级练习题 1001 害死人不偿命的(3n+1)猜想
1.问题描述卡拉兹(Callatz)猜想:对任何一个正整数 n,如果它是偶数,那么把它砍掉一半;如果它是奇数,那么把 (3n+1) 砍掉一半。这样一直反复砍下去,最后一定在某一步得到 n=1。卡拉兹在 1950 年的世界数学家大会上公布了这个猜想,传说当时耶鲁大学师生齐动员,拼命想证明这个貌似很傻很天真的命题,结果闹得学生们无心学业,一心只证 (3n+1),以至于有人说这是一个阴谋,卡拉...原创 2018-10-31 22:43:55 · 212 阅读 · 0 评论 -
PAT 乙级练习题 1008 数组元素循环右移问题
1. 问题描述一个数组A中存有N(>0)个整数,在不允许使用另外数组的前提下,将每个整数循环向右移M(≥0)个位置,即将A中的数据由(A[0] A[1] ⋯ A[N−1])变换为(A[N−M]⋯A[N−1] A[0] A[1] ⋯ A[N−M−1])(最后M个数循环移至最前面的M个位置)。如果需要考虑程序移动数据的次数尽量少,要如何设计移...原创 2018-12-08 22:48:22 · 229 阅读 · 1 评论 -
PAT乙级练习题 1026 程序运行时间
1. 问题描述要获得一个C语言程序的运行时间,常用的方法是调用头文件time.h,其中提供了clock()函数,可以捕捉从程序开始运行到clock()被调用时所耗费的时间。这个时间单位是clock tick,即“时钟打点”。同时还有一个常数CLK_TCK,给出了机器时钟每秒所走的时钟打点数。于是为了获得一个函数f的运行时间,我们只要在调用f之前先调用clock(),获得一个时钟打点数C...原创 2018-12-05 23:15:01 · 250 阅读 · 0 评论 -
PAT 乙级练习题 1046 划拳
1. 问题描述划拳是古老中国酒文化的一个有趣的组成部分。酒桌上两人划拳的方法为:每人口中喊出一个数字,同时用手比划出一个数字。如果谁比划出的数字正好等于两人喊出的数字之和,谁就赢了,输家罚一杯酒。两人同赢或两人同输则继续下一轮,直到唯一的赢家出现。下面给出甲、乙两人的划拳记录,请你统计他们最后分别喝了多少杯酒。输入描述输入第一行先给出一个正整数 N(≤100),随后 N 行,...原创 2018-12-07 22:56:56 · 224 阅读 · 0 评论 -
PAT乙级练习题 1032 挖掘机技术哪家强
1. 问题描述为了用事实说明挖掘机技术到底哪家强,PAT组织了一场挖掘机技能大赛。现请你根据比赛结果统计出技术最强的那个学校。 输入格式输入在第1行给出不超过10^5的正整数N,即参赛人数。随后N行,每行给出一位参赛者的信息和成绩,包括其所代表的学校的编号、及其比赛成绩(百分制),中间以空格分隔。输出格式在一行中给出总得分最高的学校的编号、及其总分,中间以空格分隔。题目保...原创 2018-12-01 23:15:28 · 442 阅读 · 0 评论 -
PAT乙级练习题 1036 跟奥巴马一起编程
1. 问题描述美国总统奥巴马不仅呼吁所有人都学习编程,甚至以身作则编写代码,成为美国历史上首位编写计算机代码的总统。2014年底,为庆祝“计算机科学教育周”正式启动,奥巴马编写了很简单的计算机代码:在屏幕上画一个正方形。现在你也跟他一起画吧!输入描述:输入在一行中给出正方形边长N(3<=N<=20)和组成正方形边的某种字符C,间隔一个空格。输出描述:输出由给定...原创 2018-12-02 23:10:31 · 819 阅读 · 0 评论 -
PAT乙级练习题 1016 部分 A + B
1. 问题描述输入描述:正整数A的“DA(为1位整数)部分”定义为由A中所有DA组成的新整数PA。例如:给定A = 3862767,DA = 6,则A的“6部分”PA是66,因为A中有2个6。 现给定A、DA、B、DB,请编写程序计算PA + PB。输出描述:在一行中输出PA + PB的值。输入样例:3862767 6 13530293 3输出样例:399...原创 2018-12-04 21:07:31 · 282 阅读 · 0 评论 -
八数码游戏
1. 问题描述2 8 3 1 6 4 7 5 如何转变成:1 2 3 8 4 7 6 5 给出一个合法的走步序列。2. 解题思路产生式系统求解:规定出综合数据库,规划集合及其控制策略。①综合数据库:选择一种数据结构来表示将牌...原创 2018-11-29 23:01:20 · 2460 阅读 · 1 评论 -
排序算法(三)插入排序
1.问题描述用插入法对<6,5,3,1,8,7,2,4>重新排序,使其从小到大输出。2.解题思路1)从第一个元素开始,该元素被认为已排序;2)取出下一个元素,在已排列的元素序列中从后向前扫描;3)如果已排序的元素大于新元素,则将该元素移到下一位置;4)重复步骤3,直到找到已排序的元素小于或等于新元素的位置;5)将新元素插入到该位置;6)重复步骤2。3...原创 2018-11-16 20:22:44 · 327 阅读 · 0 评论 -
排序算法(一)选择排序
1.问题描述从键盘上输入10个整数,用选择法将其由小到大的顺序排列并输出。2.解题思路1)先将10个数中的最小的数余 a[0]对换;2)再将 a[1] 到 a[9]中最小的数与 a[1] 对换;3)每比较一轮,找出一个未排序的数中最小的一个,共比较9轮。3.图解 8 9 5 6 7 3 4 0 2 1 0 ...原创 2018-11-08 23:20:14 · 244 阅读 · 0 评论 -
计算几何(三)三角形面积
1.已知三角形边长问题描述已知三角形三边长分别为a、b、c,求三角形面积S。【方法】海伦公式S = sqrt(p*(p - a) * (p - b) *(p - c)),其中p=(a + b + c)/2.代码实现#include&amp;lt;iostream&amp;gt;#include&amp;lt;math.h&amp;gt;using namespace std;int main(){原创 2018-11-07 23:57:42 · 1574 阅读 · 0 评论 -
Python学习实例(一)温度转换
1.问题描述温度的刻画有两个不同体系:摄氏度(Celsius)和华氏度(Fabrenheit)。请编写程序将用户输入华氏度转换为摄氏度,或将输入的摄氏度转换为华氏度。...原创 2018-11-12 22:39:55 · 2524 阅读 · 0 评论 -
计算几何(二)判断点是否在线段上
1.问题描述已知点Q,线段为P1P2,试判断点Q是否在线段P1P2上。2.解决思路1)首先判断Q是否在直线P1P2上。判断方法:用叉乘,QP1 × P1P2 = 0,即(Q - P1) *(P1 - P2) = 0;2)考虑Q是否在P1P2的反向延迟线上,即Q在以P1、P2为对角顶点的矩形内。判断方法:设Q(a,b),P1(x1,y1),P2(x2,y2)且x1 < ...原创 2018-11-04 22:48:59 · 2802 阅读 · 0 评论 -
基础算法(五)次方求模
1.问题描述求a 的 b 次方对 c 取余的值。输入:第一行输入一个整数 n ,表示测试数据的组数(n <100),每组数据只有一行,其中有三个正整数 a,b,c(1 ≤a,b,c≤10000000000)输出:a的b次方对c取余之后的结果。样例输入:32 3 53 1...原创 2018-11-06 23:54:44 · 1178 阅读 · 0 评论 -
计算几何(一)三点顺序
1.问题描述现有不共线的三点A、B、C的坐标,它们一定能组成一个三角形,判断A、B、C是顺时针给出的,还是逆时针给出的。输入:每一行是一组测试数据,有6个整数X1,Y1,X2,Y2,X3,Y3分别表示A、B、C三点的横纵坐标(坐标值都在0到10000之间),输入000000表示输入结束,测试数据不超过10000组。输出:三点顺时针,输出1;逆时针,输出0.样例输入:...原创 2018-11-03 23:32:44 · 383 阅读 · 0 评论 -
PAT乙级练习题 1002 写出这个数
1.问题描述读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字。输入格式:每个测试输入包含 1 个测试用例,即给出自然数 n 的值。这里保证 n 小于 10^100。输出格式:在一行内输出 n 的各位数字之和的每一位,拼音数字间有 1 空格,但一行中最后一个拼音数字后没有空格。输入样例:1234567890987654321123456789...原创 2018-11-01 16:53:55 · 287 阅读 · 0 评论 -
PAT乙级练习题 1011 A+B和C
1. 题目描述给定区间[-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”,其...原创 2018-12-03 22:08:14 · 275 阅读 · 0 评论