sairate c9f8710d03 sairate<sairate@sina.cn>
Signed-off-by: sairate <sairate@sina.cn>
2025-07-12 16:05:52 +08:00

124 lines
4.4 KiB
Plaintext
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

NOI94 试题
第一天 试题一 字符排列
试题
  键盘输入一个仅由小写字母组成的字符串输出以该串中任取M 个字母的所有排列及排
列总数。
  输入数据均不需判错。
第一天 试题二 高精度实数减法
试题
  编程实现两个高精度实数减法两数分别由键盘输入均不超过240位。
  输入数据均不需判错。
第一天 第三题 实数数列
试题
  一个实数数列共有N项已知
  ii-1i+12d1iNN60
键盘输入Nd1nm输出m。
  输入数据均不需判错。
第一天 试题四 删数问题
试题
  键盘输入一个高精度的正整数N去掉其中任意S个数字后剩下的数字按原左右次序将组
成一个新的正整数。编程对给定的N和S寻找一种方案使得剩下的数字组成的新数最小。
  输出应包括所去掉的数字的位置和组成的新的正整数。N不超过240位
  输入数据均不需判错。
第一天 试题五 方阵集合
试题
  一个N×N的方阵由数字0、1、2组成。定义由该方阵中若干元素组成的集合P满足
  ①P中元素的值要么全部为1要么全部为2
  ②假设P全由值为1的元素组成若方阵中任一元素Y其值也为1并且Y与P中的某一元
素存在一条全由值为1的元素组成的四连通路径则Y必定也属于P
  同样假设P全由值为2的元素组成若方阵中任一元素Y其值也为2并且Y与P中的某
一元素存在一条全由值为2的元素组成的四连通路径则Y必定也属于P
  ③对于任一元素X若属于P则其在原方阵中上下左右四个方向上的相邻元素的值只能
为1或2或者超出方阵的边界但不可能为0。
  编程输出原始方阵中这样的集合总数和每个集合所含元素的个数。
  原始方阵由文本文件输入文件第一行是一个数字N表示方阵的大小其下N行为该方
阵,同一行中各数字以空格分隔。
  N60文件名由键盘输入
  输入数据均不需判错。
第二天 试题 零件与部件
试题
  一个部件是由若干单位方格组成的连续的平面图形,其单位方格的个数称为该部件的面
积。例如下图所示是三个部件面积分别为6、13和7。
   ┏━━━━━━━━━━━━━━━┓
  ┃ ┌┬┐ ┌┬┬┬┐ ┌┐ ┃
   ┃ ├┼┘ ├┼┼┴┘ ├┼┐ ┃
   ┃┌┼┤ ├┼┤┌┐ └┼┼┐ ┃
   ┃└┼┤ ├┼┼┼┤ └┼┼┐┃
   ┃ └┘ └┴┴┴┘ └┴┘┃
   ┗━━━━━━━━━━━━━━━┛
  而一个零件是一个面积不超过给定值P0P9的部件。
  假设已有M0M10种零件要用M种零件拼接成N0N10个部件拼接时不
得有重叠,每个零件可以任意旋转和翻转,每种零件所用个数不限,也可以不用。编程对给
定形状的N个部件以及输入的M和P求解一种定义这M种零件形状的方案使得拼接所有 N
个部件,所用的零件总数为最少。
  例如有3个部件形状分别如下图所示
  若M3P5此时一组最佳解和拼接各部件的示意图分别如下所示三种零件分别
以ABC区分
        ┏━━━━━━━━━━━━━━┓
        ┃ ┌┬┐ ┌┬┐ ┌┐ ┃
        ┃┌┼┼┘ ├┼┤ ├┼┐ ┃
        ┃└┼┤ ├┼┤ └┼┼┐ ┃
        ┃ ├┤ └┴┘ └┼┼┐┃
        ┃ └┘ └┴┘┃
        ┗━━━━━━━━━━━━━━┛
            ┏━━━━━━━━┓
            ┃A BB C ┃
            ┃A B  CC ┃
            ┃  B   CC┃
            ┗━━━━━━━━┛
  所有零件总数为6。
         ┏━━━━━━━━━━━┓
         ┃ AA BB C ┃
         ┃BB  BA CC ┃
         ┃ B  BA  CC ┃
         ┃ B       AA┃
┗━━━━━━━━━━━┛
  若M3P3此时一组最佳解和拼接各部件的示意图分别如下图所示
           ┏━━━━━━┓
           ┃A B  C┃
           ┃  B CC┃
┗━━━━━━┛
  所用零件总数为8。
         ┏━━━━━━━━━━━┓
         ┃ CA CC C ┃
         ┃CC  CC CC ┃
         ┃ B  CC  AC ┃
         ┃ B       CC┃
┗━━━━━━━━━━━┛
输入输出要求:
  部件形状由一个文本文件给出该文件第一行是一个数字N表示要求拼接的部件总数。
第二行是一个数字S10Si9i1…N 表示能放下第一个部件的最小方阵的大小,
每一个部件都紧贴着最小方阵的左上角存放。其下S1行是一个S1×S1的仅由0和1组成的数字
方阵用来表示第一个部件该方阵中每个数字对应一个小方格值为1 表示对应方格属于
该部件。下一行又是一个数字S2表示能放下第二个部件的最小方阵的大小依次类推。文
件输入不会有错。
  M和P由键盘输入
  输出应包括M种零件的形状和拼接成每个部件主方案 同题例均以字符形式表示即可。
输出不应包括所用的零件总数。只需求出一个最佳解。
  整个程序对输入数据不判错。
  注意:在测试时将有严格的时间限制。