题目信息
-
题目类型
-
国赛
-
题目年份
-
2025
-
题目题型
-
编程题
-
关 键 词
-
收集金币
题目题干
6. 收集金币C7n100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
时间限制:C/C++ 语言 1000MS; 其他语言 3000MSC7n100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
内存限制:C/C++ 语言 65536KB; 其他语言 589824KBC7n100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
题目描述:(注:input (输入函数的括号中不允许添加任何信息)C7n100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
提示信息:在国际象棋中,骑士每次可以移动到周围八个格子之一,如下图红色格子为骑士可移动到的位置。
C7n100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
有一个 8×8 的棋盘,初始时棋盘上有两个骑士。棋盘上会出现 n 次金币,每次一枚。当金币出现时,你需要立刻选择其中一个骑士,通过若干次移动到达金币位置来收集该金币 (如果金币出现在某个骑士的位置,那么这个骑士收集该金币需要移动 0 次),该金币被收集后才会出现下一枚金币。给定整数 n、两个骑士的初始位置 (第一个骑士在第 x₁行第 y₁列,第二个骑士在第 x₂行第 y₂列) 以及 n 次金币出现的位置,请计算收集完 n 枚金币后,两个骑士移动次数之和的最小值。C7n100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
注意:棋盘左上角为第 1 行第 1 列,骑士移动过程中两个骑士不能同时出现在同一个格子里。C7n100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
例如:n=3,x₁=4,y₁=3,x₂=5,y₂=4,初始棋盘如图所示:
当金币依次出现时,按照以下方式收集金币可以使两个骑士移动次数之和最小:C7n100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
第一次金币出现在第 3 行第 2 列,按如下方式移动 2 次收集该金币;
第二次金币出现在第 4 行第 6 列,按如下方式移动 1 次收集该金币;
输入描述:第一行输入五个整数 n、x₁、y₁、x₂、y₂(1≤n≤500,1≤x₁≤8,1≤y₁≤8,1≤x₂≤8,1≤y₂≤8),n 表示出现金币的次数,x₁和 y₁表示初始时第一个骑士在棋盘的第 x₁行第 y₁列,x₂和 y₂表示初始时第二个骑士在棋盘的第 x₂行第 y₂列,数据保证两个骑士的位置不同,整数之间以一个空格隔开;接下来输入 n 行,每行两个整数 aᵢ、bᵢ(1≤aᵢ≤8,1≤bᵢ≤8),表示第 i 次出现的金币在棋盘的第 aᵢ行第 bᵢ列,整数之间以一个空格隔开。C7n100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
输出描述:输出一个整数,表示收集完 n 枚金币后,两个骑士移动次数之和的最小值。C7n100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
样例输入:C7n100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
3 4 3 5 4C7n100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
3 2C7n100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
4 6C7n100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
6 6C7n100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
样例输出:5C7n100150满分答卷(100150.com)-青少年编程等级考试及竞赛题库
本题共有 10 组测试用例,每通过一组用例得 10 分。
答案解析
相关题目
提示声明
- 免责声明:本站资源均来自网络或者用户投稿,仅供用于学习和交流:如有侵权联系删除!
- 温馨提示:本文属于积分文章,需要充值获得积分或升级VIP会员,也可在会员中心投稿获取。
猜你喜欢
Scratch3.0
全国青少年软件编程等级考试
Python
Scratch图形化一级
Scratch图形化四级
Scratch图形化三级
Scratch图形化二级
电子学会