2023年12月19日发(作者:尼桑蓝鸟2017款报价及图片)
1. 车牌号码检查 假设车牌号码是由四位数的阿拉伯数字组成共有 0000 至 9999
一万个号码。 一车牌号码若具有以下三种性质之一则称此车牌号码 OK。 1 车牌号码仅含有一个数字或两个不同的数字 如 2222 3833 7007。 2 车牌号码含有三个不同的数字其中有一个数字重复出现 另外二数字为连续 注意: 90 不算连续或相差二 如 4456 5958 3848 0112 2572 0266。 3 车牌号码含有四个不同的数字其中有三个数字为连续注意: 890 不算连续 例如 5324 7681。 试撰写一程式做车牌号码之检查:输入格式:由键盘输入两个整数 XY其中 0≤X≤Y≤9999 X 或 Y 代表车牌号码若 X 或 Y 不满四位数则其代表的车牌号码即该数左边补 0 而成的四位数号码。输出格式:由萤幕输出 第一列印出 X 至 Y含 X 与 Y中 OK 车牌号码的数目。接著印出前十 个 OK 的车牌号码 若不足十个则印出所有的 OK 车牌号码注意:车牌号码一定要 印成四位数。输入范例:985 1024输出范例:不限定用中文0985 至
1024 共有 17 个 OK 车牌号码 前 10 个如下:10102. 字符排列 请撰写一程式,列出一所给字串(长度不会超过 10)各文字符号的所有可能排列。 输入为一文字档,档名为 ,输出则显示於萤幕,其字串显示顺序则按其 ASCII 次序由小到大排列。 在输入档中,每一横列为一字串,如输入范例所示。输入范例:cbaaaabbaaaf输出范例:Given string is are 6 new
strings:abcacbbacbcacabcbaGiven string is are 10 new
strings:aaabbaababaabbaabaabababaabbaabaaabbaabababaabbaaaGiven string is
are 4 new strings:aaafaafaafaafaaa 13. 巴凤抛针 Buffon Needle
Problem 一块无限大的木板上面画有等距离之平行线 今将一根长度与平行线间格距离相等之针 随 意投掷在板子当中 请问针横跨在任一条线上的机率为何 见图1示 试写一程式模拟巴凤抛针N次统计出针横跨在任一条线上的机率 p. 程式从输入档案 中读入若干个不同的N值 然后列印出相对之p值以及2/p之值 输入档案每列存 一个值代表一次要统计之投掷次数 程式在读入之N为负值时结束执行。 条件:1. 每次统计时 抛针之次数 N 假设在1到1000000之间 2. 理论上针头针尾各落在线上机率为0 但程式运算中若产生此种情形 以没有跨线计 3. 机率p值
以及2/p的值 输出时请列印到小数以下第五位 提示: 1. 可假设平行线间格距离与针之长度等於 1 2. 利用系统中现成之乱数函数 产生针投掷在板上之位置 3. 因板子无限大故可假设针头落在固定两线之间 如图2示 4. 投掷次数越多 统计结果应越趋近於理论值 b a c 图1: 巴凤抛针. a 无跨线 图2: 简化后之巴凤 b 针跨於线
抛针问题输入范例:3 种不同抛掷次数之统计1-1输出范例:每个问号都是一位数字N 100p 0. 2/p .N 5000p 0. 2/p .N 10000p 0. 2/p .Bye Bye
24. 新身份证号码 假设身份证字号编码规则如下: 第一字为英文字母代表出生地。
第二字为数字1或2: 1 表示男生 2 表示女生。 第三字至第九字为数字表示流水号。
第十字为英文字母做检查码 此检查码算法如下: 1 先将第一字的英文字母换成二位数: A B C D E F G H I J K L M N 10 11 12 13 14 15 16 17 18 29 21 22 23 34 O P Q R
S T U V W X Y Z 35 36 47 48 49 50 51 52 53 54 55 56 2 把1中换出之数的十位数叫
x0 个位数叫 x1 身份证字号的第二字到九字分别叫 x2 到 x9 算出 sum x09 x1
8 x2 7 x3 6x4 5 x5 4 x6 3 x7 2 x8 x9 然后算出 x10 10 – sum 的个位数 3
算出身份证字号第二字到第九字看作文字符号时其 ASCII code的 parity。例如数字
6 看作文字符号其ASCII code 为十六进位 36 化为二进位则是0011 0110 共有四个1所 以为even parity。你要把第二字到第九字合起来算。 4 用 2的 x10 和 3的
parity 决定出第十字: x10 值: 0 1 2 3 4 5 6 7 8 9 even parity: A B C D E F G H I J odd
parity: P Q R S T U V W X Y 试撰写一程式可由档案 读入身份证号码
检查各身份证号码依此规定是否 正确。资料中字母可以为大写或小写 但一律看作大写本题评分标准: 1. 字母可否为大小写 20 2. 身份证字号第一字到第九字正确
只有最后一位检查码有错时可查知的 50 3. 可查知其它错误 例如第一字非字母或第二字非1或2 或含有不合规定之文字符号 30输入范例:A12345678ZA56788899BJ20033844y输出范例:A12345678Z is ErrorA56788899B
is ErrorJ20033844y is OK 35. 聪明搬运车某工厂为提升生产效率,决定采用自动搬运车来载运物料和成品,适时地穿梭於工厂的各单元间。例如,搬运车先从A点搬运原料至B点加工,再将成品搬到C点包装。因此,搬运车须连续执行从某一点移动到另一点之动作以完成任务。假设此工厂是一个格子化的环境 grid environment ,
而搬运车仅有三个动作: Go Forward: 向前走一格 Turn Left: 向左转90度 Turn
Right: 向右转90度搬运车每执行一个动作需要花一个单位的时间,而且转弯时无法同时前进。现在请撰写一个程式来帮助此工厂判定搬运车完成任一个任务所需花费之最少的时间是多少输入:由档案输入,档名为。档案可能有多组资料,每组资料描述一个工厂环境及其需执行任务。每组输入资料之第一列为三个整数M
N T MNT≤10,分别表示此工厂环境为MxN之二维格子,且有T个任务需要测试。输入之整数M N T均小於或等於20,并以空白隔开。接下来M个输入列描述环境内容,每列有N个数字,0代表没有障碍物,1代表有障碍物。再来有T个输入列,每列定义一个任务:每列组成含二个整数XY,一个大写英文字母D, 一个整数P,接著2xP个整数均以空白隔开,分别表示搬运车之起始座标为 XY,其起始面对方向为D,此任务所要到达的目标点数为P ≤5,与每一个依序要到达的目标点之x座标值与y座标值。座标轴原点位於左下角,而搬运车方向可能为E S W N 分表east south west
north 请参考范例之输入资料及图示 。当读到MNT均为0时,表示以下没有资料要处理了。输出:请输出至萤幕,对每一组资料印出其为第几组资料,然后印出该组资料之各个任务之最少花费时间。若某一任务无法达成 如因障碍物之阻挡致使某一目标点无法到达,则印出 -1。详细格式请看参见范例。 N B W E S 图二 A: 22 C A B:
77 C: 93 图一 4范例输入档: 9 10 2 第一组资料如图一所示9x10之格子化环
境,左下角为11,而右上角为109。共有两 项任务需要测试。 0代表没有障碍物,1代表有障碍物。 任务一: , , 搬运车起点为 22 面向南方 目标点为 77 与
93,分别为图一中所标示之ABC点。 任务二: 1000000110 , , 搬运车起点为 21 面向东方 目标点为 19 2 2 S 2 7 7 9 3 79 与 93 2 1 E 3 1 9 7 9 8 2
第二组资料如图二所示3x3之格子化环境, 331 左下角为11,而右上角为33。仅有一项任 010 务需要测试。 001 , , 搬运车起点为 11 面向东方 目标点为 33 000
测试资料结束 1 1 E 1 3 3 000范例输出: Data Set 1: Task 1: 26 因 79点为障碍物占据 Task 2: -1 Data Set 2: 因 33点为障碍物包围 Task 1: -1 56. 圆桌武士 定义一游戏其规则如下。 1 有 n 个人绕著一张圆桌而坐,其编号依顺时钟方向依序为 1 2 ...
n。 2 给定两个 1 到 n 之间的正整数 a 与 b。 3 由编号 a 的人开始依顺时钟方
向逐一报数a 报 1 a 的下一个报 2 下下一个报 3 ...,一直报到 b。此时,报到 b 的人离开圆桌。然后,由离开者的下一个人重新开 始再次逐一报数由 1 开始报起,相同的,报到 b 的人便离开圆桌。这个步骤会一直 重复直到剩下一个人为止。该剩下的人便是胜利者。 我们以 n5 a5 b3 为例加以说明。开始时 5 人的位置如图i。因为 a5,编号 5 的 人报 1 编号 1 下一个报 2 编号 2 下下一个报 3 并离开 如图ii。然后,由编 号 3 的人重报这次离开的是编号 5 如图iii。依此类推,接下来依序离开的是编号 4 与编号 1 如图ivv。此时,只剩下一个编号 3,他就是胜利者。如图vi 2 1 1 1 3 1 3 5 5 2 5 2 4 3 4 3 4 3 2 1 i ii iii 1 1 3 1 1 4 3 3 3 2 2 3 iv v vi 请撰写一个程式模拟上述游戏,决定最后的胜利者是谁。输入: 输入是一个文字档,档名为 ,格式如下。 1 第一列包含一个整数 q 代表问题共有 q 组。 q≤20 2
之后连续 q 列每一列包含三个整数 n、 a、b,三个整数间以一个或更多的空格格开。 1≤n≤500 1≤ a≤ n 1≤ b≤ n输出: 输出为在萤幕上的 q 列文字,其中第 i 列
1≤i≤q 为第i 组输入 n、 a、b 值所对应 的胜利者编号。 输入范例: 3 表示共有 3
组问题 5 5 3 10 1 2 200 13 7 输出范例: 3 5 5 请注意!每一组的计算不得超出 30
秒。 67. 纵横黑白 给予一黑白影像 黑色像点值为1白色像点值为0,我们定义任一黑色像点之连接值connectivity value 为其相邻八邻点 上下左右左上左下右上右下
中黑色像点的总个数,因此任一黑色像点其连接值connectivity value 应介於0至8之间。试设计一程式,可由文字档中读入影像资料并印出各影像之连接值统计图 connectivity value histogram。输入格式: 参看以下范例 由读入档案,档案中有多组影像资料,每组资料之第一列为两个整数 XY,代表该影像有X列、每列有Y点像点,接著为X列资料,每列有Y个0或1的数字。 档案中有多组Data,当 X 和 Y 都是 0 表示没有资料了。输出格式: 参看以下范例 由萤幕输出,可用画图模式也可以用文字模式,只要正确则分数一样。 根据所求取之连接值,我们可定义连接值统计图表 connectivity value histogram 其水 平座标轴代表连接值,而其垂直座标轴代表影像中具有某一连接值之黑点总数。绘出所 读入档案中每组影像之连接值统计长条图表 connectivity value histogram。输入范例: 8 8 0 0 0 0 0 0 0 0 0 1 0
0 1 0 0 0 0 0 1 1 1 1 1 0 0 1 1 1 1 1 1 0 0 0 0 1 1 1 1 0 0 1 0 1 0 1 1 0 0 0 0 0 1 1 0 0 0 0 0
0 0 0 0 0 5 5 0 0 0 0 0 0 1 0 1 0 0 0 1 1 0 0 1 1 1 0 0 0 0 0 0 0 0输出范例: 仅供参考其格式 并非正确答案Connectivity value histogram of image 1
____________________________________________________ 0 1 2 3 4 5 6 7 8 1 3 4 5
5 4 3 4 4 connectivity value Please Hit any key to continue… 此时按任一键后再秀出第二组的长条图 78.(找出捷径)给定一有方向性之网路,试求出任意两特定端点间之最短路径及其距离。输入档案()中,每一列代表一个连线,由起点、终点及距离三个参数组成,参数间以空白隔开。其起点及终点皆是长度为3之字串包含任意ASCII字符,距离为整数,若其值大於等於0时,表示在该网路中有一由起点至终点之连线,且其距离为此整数值,若其值小於0时,表示要求程式输出由此列之起点至终点的最短路径及其距离。输入档中最多不超过1000列。范例:如右列之网路 3 AA 6输入: AA 5AA AA 3 AAaAA Aa 4 4AA Aa 5 Aa 3AA AAa 6Aa AAa 3AA
AAa –1AAa AA –2输出:不限定用中文1. 由AA 至 AAa 之最短路径为:AA-gtAa-gtAAa 其距离为72. 由AAa至AA之路径不存在 89 循环小数任给两个整数 相除后 商数有可能为循环小数 也有可能为有限小数. 请写一程式计算并印
出两个整数乡除所得之商数的小数部分. 若该小数部分为有限小数则印至除尽的位数. 若该小数部分为循环小数则印至循环小数的第一个循环结束的位数 并注明该循环小数共有多少位数循环.输入:输入档含多笔资料 一笔一列. 每笔资料有两个正整数 第一个正整数表示被除数 第二个正整数则表示除数. 被除数永远小於除数
并且除数小於 1000. 当被除数与除数均为 0 时表示资料结束.输出:对於每笔资料
输出应包含商数的小数 以小数点为开始. 若商数为有限小数请将小数部分全部列印出来. 若商数为循环小数 请列印到第一个循环结束.举例来说 7/
应以 .21 表示 2121 及 212121 等 都可视为一个小数循环 但最短的小数循环为
21.在印出商数的下一行应印出 quot商数为有限小数quot 或是 quot商数为 n 位循环小数quot n 表示一共有几位小数循环. 每笔资料的输出结果最后应换行.输入范例: 输入档名 532 9907 1641 2440 0输出范例: 萤幕输出.537商数为 2 位循环小数.4375商数为有限小数.491商数为
60 位循环小数 910 聪明计算器市面上简单的计算器只能键入数字计算 不能如电脑可以读入程式 依程式逻辑就能计算出结果. 希望你模拟一个聪明计算器 可以处理一般电脑的叙述句 如: A154B2 的电脑程式语句 变数 整数运算式.其中整数运算式含有乘号.加号.整数以及变数 整数运算式的变数的值是由先前的整数运算式运算出来的结果 运算顺序当然是先做乘法后做加法. 为简化程式设计上的困难 利用分号 分隔电脑程式语句 最后以句点. 当作电脑程式结束. 变数名称都是单一字母
大小写视为相同.请撰写一程式 来执行整数运算程式 并将每个电脑程式语句的执行结果一一印出. 输入为一文字档 档名为 输出则显示於萤幕. 在输入档中 每一横列为一字串 每字间至少一空格 如输入范例所示.输入范例: 输入档名
3 12B 24 2 6 1C 4 5 6 2 4 3 9D A 3 B 2 C
5 A.输出范例: 萤幕输出A 15B 55C 85D 9415 1011 括号匹配假设有一个字串包含了左括号 quotquot和右括号 quotquot 我们规定任何一个左括号都由内而外与在它右边. 且距离最近的的右括号匹配.请写一个程式读取存有测试字串的档案
每次读一列 并判断字串是否有未匹配的括号 若有未匹配的括号 请将其用惊叹号 标示出来.评分标准: 1.判断字串是否包含未匹配的括号: 50 2.将未匹配的括号标示出来: 50输入范例: 输入档名 ab-cabcd--aaaampampampabc输出范例: 萤幕输出The test string is:abcResult: This string is test string
is:ab-cResult: This string is test string is:abcd Result: This string is
test string is:--aaa Result: This string is test string is:ampampamp 11Result:
This string is test string is:abc Result: This string is wrong. 1212 资料群聚在图形识别应用中 有一种 K 平均值演算法 K-means algorithm可以将一组输入资料
n 依其相似程度分成 K 个群集cluster.如果我们以座标空间距离远近来代表相似程度 则距离较接近之资料会被分在同一个群集. 此演算法如下: 1.选取前 K 个资料 kyk 当作此 K 个群集之起始代 表点. 2.将所有资料依其距离远近关系 分配各个资料到离此资料最近之代表点所对 应的群集. 3.修订每个群集之代表点位置为所有属於该群集资料点之平均值. 4.如果这 K 个群集.
更多推荐
输入,资料,输出,范例,程式,代表,整数,表示
发布评论