pat520专题

【PAT520 钻石争霸赛】7-6 随机输一次 (20分)

大家应该都会玩“锤子剪刀布”的游戏:两人同时给出手势,胜负规则如图所示:   现要求你编写一个控制赢面的程序,根据对方的出招,给出对应的赢招。但是!为了不让对方意识到你在控制结果,你需要隔 K 次输一次,其中 K 是系统设定的随机数。 输入格式:输入首先在第一行给出正整数 N(≤10),随后给出 N 个系统产生的不超过 10 的正随机数 { K​1​​,K​2​​,⋯,K​N​​ },数字间

【PAT520 钻石争霸赛】7-5 猜近似数字 (15分)

甲想好了一个 n 位数字让乙来猜,只要猜的数字位数正确,至多有 1 位与谜底不同,且不同的数字相差不超过 1,就算猜对了。例如谜底是 67,若乙猜 66、68、77、57,就都算对了;猜 167 就不能算对。 输入格式: 输入首先在第一行给出一个不超过 1000 位数的、最高位不是 0 的正整数,是甲给出的谜底。随后若干行,每行给出一个乙猜的数字,都是最高位不是 0 的正整数。直到出现 -1

【PAT520 钻石争霸赛】7-4 古风A+B (15分)

给定两个绝对值不超过 10​9​​ 的整数 A 和 B,计算它们的和 A+B 是非常简单的事,但要将和这个数字按照中国古风从上到下竖着输出,就不是那么简单了吧? 输入格式: 输入在一行中给出 2 个绝对值不超过 10​9​​ 的整数 A 和 B,其间以空格分隔。 输出格式: 将 A+B 数值的每一位从上到下竖着输出。如果是负数,那么负号占第 1 行,其它数字不用输出符号。 输入样例:

【未完成】【PAT520 钻石争霸赛】7-7 阶乘的非零尾数 (20分)

“求 N 阶乘末尾的第一个非零数字”是一道常见的企业笔试题。这里我们略微做个变化,求 N 阶乘末尾的第一个非零 K 位数,同时输出末尾有多少个零。 输入格式: 输入给出一个不超过 10​7​​ 的正整数 N 和要求输出的位数 0<K<10。 输出格式: 在一行中输出 N 阶乘末尾的第一个非零 K 位数(注意前导零也要输出)、以及末尾 0 的个数,其间以 1 个空格分隔。 输入样例: 1

【超时】【PAT520 钻石争霸赛】7-8 三足鼎立 (25分)

当三个国家中的任何两国实力之和都大于第三国的时候,这三个国家互相结盟就呈“三足鼎立”之势,这种状态是最稳定的。 现已知本国的实力值,又给出 n 个其他国家的实力值。我们需要从这 n 个国家中找 2 个结盟,以成三足鼎立。有多少种选择呢? 输入格式: 输入首先在第一行给出 2 个正整数 n(2≤n≤10​5​​)和 P(≤10​9​​),分别为其他国家的个数、以及本国的实力值。随后一行给出 n

【PAT520 钻石争霸赛】7-2 真的恭喜你 (10分)

当别人告诉你自己考了 x 分的时候,你要回答说:“恭喜你考了 x 分!”比如小明告诉你他考了90分,你就用汉语拼音打出来 gong xi ni kao le 90 fen!。 但是如果小明没考好,比如只考了 20 分,你也“恭喜”人家就不对了。这时候你应该安慰他说:“考了 20 分别泄气!”用汉语拼音写出来就是 kao le 20 fen bie xie qi!。 输入格式: 输入在一行里给

【PAT520 钻石争霸赛】7-1 考试周 (5分)

考试周快到了,浙江大学的电子屏又调皮了…… 本题请你帮小编写一个自动倒计时的程序,对给定的日期(例如“腊八”就对应 8)和倒计时天数(例如电子屏上的“四天之后”就对应 4),自动调整公式里的分母(例如 8/2=4 里面的那个 2)。 输入格式: 输入在一行中给出两个正整数:A 是给定的日期,不超过 30;B 是倒计时天数,不超过 10。 输出格式: 在一行中输出公式 A/X=B,其中