资源描述
C语言五级L数字变换给定一个包含5个数字(0-9)的字符串,例如“02943”,请将“12345” 变换到它。你可以采取3种操作进行变换.交换相邻的两个数字
1 .将一个数字加lo如果加1后大于9,那么变为0.将一个数字加倍。如果加倍后大于9,那么将其变为加倍后的结果除 以10的余数。
最多只能用第2种操作3次,第3种操作2次求最少经过多少次操 作可以完成变换。
时间限制:1000内存限制:65536输入有最多100,000组数据 每组数据就是包含5个数字的字符串
输出对每组数据,输出将”12345"变换到给定字符串所需要的最少操作步 数。如果无法变换成功,输出-1样例输入12435
9999912374样例输出1
-13提示由于测试数据太多,如果对每组数据都从头进行搜索,就会超时。建 议先做预处理,即以“12345”作为初始状态做一遍彻底的广搜,找 出“12345”经合法变换能够到达的所有字符串,并记录到达这些字 符串各需要多少步操作。然后对读入的每组数据,在上述预处理记 录的结果中进行查询即可。
2.寻找边缘给定一张R*C的地图,由"X"和"0"组成。
现在需要重新处理这张地图,找到地图边缘的那些"0"。你需要将这些地图边缘上的"O''保存下来,然后将其他的"0"全部替换为"X"o 地图边缘的"0"指的是那些处于第一行/列或最后一行/列上的"0", 以及从这些"0"的相邻位置(上下左右)延伸出去的"0"o时间限制:1000内存限制:65536
输入第一行是一个正整数T,表示一共有T组数据。对于每组数据,其 第一行是两个正整数R和C,表示地图的大小,用一个空格分开。接 下来的R行,每行包含了 C个字符,分别是"X"或"0% 其中, 0 < T <= 10, 0 < R, C <= 500 o输出对于每组数据,输出R行,每行包含了 C个字符,分别是"X"或 "0% 每组数据之间需要额外输出一个空行。
样例输入223OXX
XXO55XXXOXXXXOX
XOOXXxxoxxxoxxx样例输出
oxxxxoxxxoxxxxox
xxxxxxxxxxxoxxx3.42 点
42是:
• 组合数学上的第5个卡特兰数
• 字符的ASCII码
• 铝的原子序数
• 6与9的乘积结果的13进制表示■生命、宇宙以及任何事情的终极答案・以及……表达式(1+5)/2*(6-4)*7的值因此,小机器人Marvin创造了这个叫42点的小游戏。在这个游戏中, 玩家会获得n个数。玩家需要使用中、口、“、/、1、)以及这n个 数构成一个合法的中缀表达式,并使得该表达式的值为42。n个数之 间的顺序可以改变。表达式运算过程中只能出现整数。
由于过于抑郁,Marvin无力完成这个游戏,于是来找你帮助。你的任 务是对于给定的n个数,判断他们是否能根据上述游戏规那么算出42o时间限制:1000内存限制:65536输入
第一行为一个数n, l<=n<=6o第二行为n个数,每个数均为[1,13] 范围内的整数。
输出输出一行,假设可以算出42那么输出“YES”,否那么输出“NO”(注意大 小写)。
样例输入152647样例输出YES
4.Project Summer 游戏小I和小B最近沉迷一款叫做《Project Summer))的游戏,小I扮 演这个游戏中需要逃生的无辜者(Innocent),小B扮演这个游戏中 抓住无辜者,阻止其逃生的背叛者(Betrayer)o这个游戏的地图是一个N行M列 的矩形,每个格点表示一个位置。 '#'表示地图中的障碍物,表示地图中的空地,此外,地图中还有 只有背叛者才能使用的传送门,用小写字母'a' - 'z'标记,它们在地 图上成对出现。
角色可以花费1单位的时间从一个格子走到上下左右相邻的4 个空地中的另一个格子(不可以走出地图边界或者走到障碍物上)。
此外,当小B扮演的背叛者走到一个传送门上时,他可以花费1单 位的时间从当前格子传送到与当前格子相同字母的另一个传送门处
(他也可以选择不传送,此时没有花费任何时间,待在原地不动)。
传送是双向的。比方,现在小B走到了标记为'a'的格子上,那么他可以选择花费一单位的时间传送到另一个标记为'a'的格子上,也 可以选择不传送,那么他就待在原地不动。
现在,小I被小B的陷阱困住了,无法移动。给出地图上小B和 小I所在的格子(他们都站在空地上),求小B最少需要花费多少 时间才能走到小I所在的格子抓住他。如果小I无法抓住小B,输 出-1时间限制:1000内存限制:65536输入
第一行一个数字T表示数据组数。接下来描述T组数据,每组数 据最开始是两个正整数N,M表示地图是N行M列的矩形。接下 来N行,每行M个字符,表示地图。在地图上,用表示空地,
表示障碍物,表示传送门,B表示小B的初始位置,T表 示小I的初始位置。对于每组数据,保证在地图上标记相同的传送 门恰好出现两次。T,N,M <= 100 输出T行,第i行输出,Case#i:t;表示第i组数据的答案是t.小B最 少需要t单位时间才能走到小I所在的格子。如果小I无法抓住小 B,输出-1 样例输入355
Bx#・.
#a.#.
##'.#.x.al55Bia.a xtt.x.
・#.#######22B#
#1样例输出Case #1: 4Case #2: 1
Case #3: -1提示对于第一组数据,假设行从上到下标号1到5,列从左到右标号1 到5,小B初始在(1,1)。小B的最优路线是:(1, 1) -> (1, 2) -> (2, 2)->(5, 4)->(5, 5)。也就是走到标记为x的传送门时忽略传送门,走 到标记为a的传送门时使用传送门。对于第二组数据,小B直接 花费1单位时间向右走一格就可以抓住小I,故输出lo对于第三 组数据,小B无法走到小I所在的位置上,故输出-1。
展开阅读全文