zoukankan      html  css  js  c++  java
  • Code Test(1)

    0922test

    1. 最小数
      Time Limit: 1 Sec Memory Limit: 128 MB
      文件名:a.cpp
      Description
      给定一个正整数n,请去掉其中的m个数字,使其剩下的数字按原先从左到右的相对次序组成一个新数,但该新数的
      值必须尽可能的小。
      Input
      只有一行,共2个整数,分别是n和m的值,中间用一个空格分隔。
      n不超过240位,所有的数据m的值都小于n的位数。
      Output
      只有一行,输出这个最小值,这个数字不允许有前置0的存在。但当结果为0时,要输出为0.
      Sample Input
      456547 1
      Sample Output
      45547

    2. 排名
      Time Limit: 1 Sec Memory Limit: 128 MB
      文件名:b.cpp
      Description
      宁波市的小学生们在镇海中学完成程序设计比赛后,老师们批出了所有学生的成绩,成绩按分数从高到低排名,成
      绩相同按年级从低到高排(注:纯属虚构,请勿对号入座)。现在主办单位想知道每一个排名的学生前,有几位学
      生的年级低于他(她)。
      Input
      有若干行:
      第1行只有一个正整数n(1≤n≤200),表示参赛的学生人数。
      第2行至第n+1行共n行,每行有两个正整数s(0≤s≤400),g(1≤g≤6)。
      其中第i+1行的第一个数s表示第i个学生的成绩,第i+1行的第二个数g表示第i个学生的年级。
      Output
      有n行,每行只有一个正整数
      其中第i行的数k表示排第i名的学生前面有k个学生排名比他(她)高,且年级比他(她)低。
      Sample Input
      23
      250 4
      220 2
      20 4
      290 2
      370 6
      210 2
      360 1
      180 1
      200 2
      170 3
      50 6
      300 6
      150 1
      400 6
      90 2
      390 6
      100 2
      380 5
      350 2
      310 4
      40 6
      0 6
      320 3
      Sample Output
      0
      0
      0
      1
      0
      1
      2
      3
      5
      1
      4
      1
      1
      1
      0
      7
      0
      3
      3
      15
      15
      12
      16

    3. 分解数字
      Time Limit: 1 Sec Memory Limit: 128 MB
      文件名:c.cpp
      Description
      输入自然数n和m,输出n的所有分解和式,分解后的每一项都不大于m。组成和式的数字自左至右构成一个不降的序
      列,不能重复。如以下三个分解式4=1+1+2;4=1+2+1;4=2+1+1 中只有第一个符合要求。各组方案之间按照字典顺
      序输出。
      Input
      有两行,每行只有一个正整数。第一行是n,第二行是m。
      1≤n≤50,1≤m≤n
      Output
      含若干行,每行先输出标号,注意标号后有’:’,然后输出一个和式。
      Sample Input
      7
      4
      Sample Output
      1:7=1+1+1+1+1+1+1
      2:7=1+1+1+1+1+2
      3:7=1+1+1+1+3
      4:7=1+1+1+2+2
      5:7=1+1+1+4
      6:7=1+1+2+3
      7:7=1+2+2+2
      8:7=1+2+4
      9:7=1+3+3
      10:7=2+2+3
      11:7=3+4

    4. 最大约数和
      Time Limit: 1 Sec Memory Limit: 128 MB
      文件名:d.cpp

    Description
    选取和不超过S的若干个不同的正整数,使得所有数的约数(不含它本身)之和最大。如:输入一个数11,则可取
    数字4和6,可以得到约数和的最大值(1+2)+(1+2+3)=9
    Input
    只有一个正整数S。
    1≤s≤1000
    Output
    只有一行,该行只有一个整数,为求得的最大值。
    Sample Input
    11
    Sample Output
    9

    1027test

    1. Lifeguards
      Time Limit: 1 Sec Memory Limit: 128 MB 文件名:life.cpp
      Description
      FJ建了一个游泳池给他的奶牛们游泳,现在他要雇佣救生员来保证他的奶牛们的安全。 每一个救生员有一个值班时间,值班时间是l~r,比如l=4,r=7,那么值班总时长为3个单位时间。 他在雇佣救生员的时候不小心雇佣多了,现在他需要解雇一个救生员,但是他想让剩下的救生员们能值尽量长的班。
      Input
      第一行一个整数N (1<=N<=100),表示现在雇佣了N个救生员。 接下来N行,每行两个整数l,r,表示值班的开始和结束时间。 0<=l,r<=1000
      Output
      一行一个整数,表示在开除一个救生员之后剩下来的救生员能值最长的班是多少。
      Sample Input 3 5 9 1 4 3 7
      Sample Output 7 Hint: 开除第三个救生员之后,4-1=3,9-5=4,3+4=7。
    2. 我要的幸福
      Time Limit: 1 Sec Memory Limit: 256 MB 文件名:happiness.cpp
      Description
      我要的幸福(happiness) 幸福/我要的幸福/渐渐清楚/梦想/理想/幻想/狂想/妄想/我只想坚持每一步/该走的方向/就算一路上/偶尔会沮丧/ 生活是自己/选择的衣裳/幸福/我要的幸福/没有束缚/幸福/我要的幸福/在不远处 Description Zyh相信自己想要的幸福在不远处。然而,zyh想要得到这幸福,还需要很长的一段路。Zyh坚持认为整个人生可以 抽象为一个nm的棋盘。左上角的格子为(1,1),右下角的格子为(n,m)。整个棋盘上的格子都有不同的事件,因为 生活的多姿多彩,事件的权值Aij都两两不同。不幸的是,在整个人生中有若干个极其黑暗的事件,它们的权值Aij =0。更进一步说,对于Aij>0的事件,权值两两不同。Zyh站在人生的起点(1,1),他想要走向人生的巅峰(n,m)。Zy h认为人只能前进,即若Zyh站在(a,b),他只能走向(a,b+1)或者(a+1,b)。并且Zyh认为黑暗的事件是绝对不可以触 碰的,因为一旦经历就会坠入万丈深渊。Zyh会将自己所经历的事件的权值依次写出,形成一个n+m-1的序列。Zyh 想知道其中字典序最小的序列是什么。若是人生过于艰难,没有一个合法序列,就输出"Oh,the life is too diff icult!",不包含引号。
      Input
      输入的第一行是两个正整数n和m。接着是n行m列的人生棋盘。 n<=1000 m<=1000 Aij<=1e9
      Output
      输入只有一列,如果存在合法序列,则为n+m-1个用一个空格隔开的权值。 否则就输出Oh,the life is too difficult!
      Sample Input 3 3
      1 3 4 7 9 0 5 6 8
      Sample Output 1 3 9 6 8
      3.水灾
      Time Limit: 1 Sec Memory Limit: 64 MB 文件名:slikar.cpp
      Description
      大雨应经下了几天雨,却还是没有停的样子。土豪CCY刚从外地赚完1e元回来,知道不久除了自己别墅,其他的地 方都将会被洪水淹没。CCY所在的城市可以用一个N
      M(N,M<=50)的地图表示,地图上有五种符号:". * X D S"。其 中"X"表示石头,水和人都不能从上面经过。"."表示平原,CCY和洪水都可以经过。""表示洪水开始地方(可能有 多个地方开始发生洪水)。"D"表示CCY的别墅。"S"表示CCY现在的位置。CCY每分钟可以向相邻位置移动,而洪水 将会在CCY移动之后把相邻的没有的土地淹没(从已淹没的土地)。求CCY回到别墅的最少时间。如果聪哥回不了家 ,就很可能会被淹死,那么他就要膜拜黄金大神涨RP来呼叫直升飞机,所以输出"ORZ hzwer!!!"。
      Input
      Output
      Sample Input 3 3 D.
       … .S.
      Sample Output 3
      4.射手宫
      Time Limit: 1 Sec Memory Limit: 128 MB 文件名:shooter.cpp
      Description
      第九个他们来到射手宫,身为射手座黄金圣斗士的艾尔里斯是狮子座圣斗士艾尔里亚的哥哥,他早在13年前就发现了撒加杀了真教皇,并且自己做了假教皇。然而他却被撒加迫害致死。现在星矢四人已经来到了射手宫。艾尔里斯的灵魂想考验一下这些圣斗士们的水平,在射手宫的墙上留下了一道题目。 “已知艾尔里斯和弟弟艾尔里亚的基因基本相同,由于基因表达起来不方便,所以就用n个数字来表示。(因为至今共发现100000种基因,所以每个数字都<=100000)兄弟之间的基因个数是相同的,就是说他们都有n个数字。且对于每个人,这n个数字互不相同。现在要求兄弟之间基因的最长公共部分。可以不连续。” 如果,他们解决不了这题,就通不过射手宫了。不过还好,他们顺利地通过了!
      Input
      本题包含多组数据. 第1行,为n(1<=n<=100000) 下面2行,每行n个数字,表示了一个人的所以基因。
      Output
      对于每组数据输出一行,为他们两人基因的最长公共部分。
      Sample Input 7 1 2 3 4 5 6 7 7 6 5 4 1 2 3
      Sample Output 3

    1103test

    T1:糖果
    (candy.cpp/in/out 1s 256M)
    小民是一个很喜欢吃糖果的小孩子,他给所有的糖果进行了分类,有A~Z一 共26种糖果,现在小民有一排糖果,小
    民很奇怪,吃糖果只喜欢吃连续的若干个 ,并且不希望吃到相同分类的糖果。现在小民让你帮他计算一下L的最大
    值,使得他的一排糖果中的任意连续L个糖果都不会有相同的分类。
    Input
    输入仅一行,一行由大写字母组成的字符串,代表小民的一排糖果。
    Output
    输出仅一行,输出L的最大值。如果一排糖果都没有相同的,请输出-1。
    Sample Input
    ABABABABABAB
    Sample Output
    2
    令字符串的长度为N ,1≤N≤10000000。

    T2:迷宫
    (maze.cpp/in/out 1s 256M)
    最近,小Y在玩一款迷宫游戏,游戏是在一个n? m的网格上进行的,每个
    格子可能是空地或者障碍物。游戏一开始,玩家控制的角色位于图中的某块空地
    上。在游戏过程中,玩家可以用上下左右键控制角色向相邻且没有障碍物的格子
    移动(当然,角色不能移动到地图之外,也不能对角线移动)。游戏的目标是收
    集地图上出现的星星(每个星星只能收集一次),收集的数量越多分数越高。小
    Y刚开了一局游戏,假设游戏时间没有限制,他想知道自己最多能收集到多少个
    星星。
    Input
    第一行包含两个正整数n和m,表示游戏的地图包含n行m列。
    接下来给出一个n×m的字符矩阵,每个字符可能为以下几种:
    ● #:表示该位置有障碍物
    ● . (英文句号):表示该位置是空地
    ● :表示该位置是空地,且生成了一颗星星
    ● S :表示该位置是空地,且玩家初始时位于该位置,保证图中有且只有一个S
    1≤n,m≤200。
    Output
    共一行,包含一个整数,表示最多能收集到多少颗星星
    Sample Input
    4 8
    ..#...
    .
    .#.S#..
    ######..
    .
    ..#.*.
    Sample Output
    2

    T3:盒子
    (box.cpp/in/out 1s 256M)
    小D在玩堆盒子的游戏,每个盒子有一个强度,代表它上方最多能堆多少个
    盒子。由于盒子都是一样大的,所以不能在一个盒子上并列放超过一个盒子。
    现在小D有n个盒子,第i个盒子的强度为xi。小D想知道,如果他要把这些盒
    子全部堆起来,至少要堆多少堆。
    Input
    第一行读入一个整数n,代表小D有的盒子个数。
    第二行读入n个整数,第i个整数xi表示第i个盒子的强度。
    Output
    一个整数表示小D至少要堆多少堆。
    n≤500000,xi≤1000000000。
    Sample Input
    5
    0 2 1 1 2
    Sample Output
    2

    1105test

    T1:整数拆段
    (number.cpp/in/out 1s 128M)
    将一个位数为L(4≤L≤10)的自然数N拆成4段,使各段对应的数的乘积最小。你能编一个程序实现吗?
    Input
    一个自然数N。
    Output
    一个整数,最小乘积。
    Sample Input
    321427
    Sample Output
    2268
    //3214*27=2268

    T2:八中教室的灯
    (lamb.cpp/in/out 1s 256M)
    八中一共有被用M条双向道路连接的N个教室(1<=N,M<=3000)。为了关闭整个八中,master wen 计划每一次关
    闭掉一个教室。当一个教室被关闭了,所有的连接到这个教室的道路都会被关闭,而且再也不能够被使用。master
    wen现在正感兴趣于知道在每一个时间(这里的“时间”指在每一次关闭教室之前的时间)时他的八中是否是“全
    连通的”——也就是说从任意的一个开着的教室开始,能够到达另外的一个教室。注意自从某一个时间之后,可能
    整个八中都开始不会是“全连通的”。

    Input
    第一行给出数字N,M,代表有N个教室,M条边,1<=N,M<=3000
    接下来N行来用描述教室之间相连的情况
    接下来N行,每行给出一个数字,代表关闭了哪个教室的灯

    Output
    输出N行,每行输出"YES"或"NO".
    第一行输出最开始时整个八中是不是连通的
    后面的N-1用来描述关闭某个教室的灯后,八中是不是连通的。

    Sample Input
    4 3
    1 2
    2 3
    3 4
    3
    4
    1
    2
    Sample Output
    YES
    NO
    YES
    YES

    T3:Bank notes
    (bank.cpp/in/out 1s 128M)
    Byteotian Bit Bank (BBB) 拥有一套先进的货币系统,这个系统一共有n种面值的硬币,面值分别为b1, b2,..., bn
    . 但是每种硬币有数量限制,现在我们想要凑出面值k求最少要用多少个硬币.
    Input
    第一行一个数 n, 1 <= n <= 200.
    接下来一行 n 个整数b1, b2,..., bn, 1 <= b1 < b2 < ... < b n <= 20 000,
    第三行 n 个整数c1, c2,..., cn, 1 <= ci <= 20 000, 表示每种硬币的个数.
    最后一行一个数k表示要凑的面值数量, 1 <= k <= 20 000.
    Output
    第一行一个数表示最少需要付的硬币数
    Sample Input
    3
    2 3 5
    2 2 1
    10
    Sample Output
    3

  • 相关阅读:
    164.Maximum Gap
    163.Missing Ranges
    162.Find Peak Element
    161.One Edit Distance
    160.Intersection of Two Linked Lists
    7.5爬取猫眼Top100电影名单
    7.5文件操作
    7.4文件操作(1)
    7.4一个失败的网易云爬虫,
    7.3数据结构(1)
  • 原文地址:https://www.cnblogs.com/rebirth-death2019/p/13778561.html
Copyright © 2011-2022 走看看