编程题 共4道

01 02 03 04

E1150 CIE-202606-C++八级-真题-练习

编程题 共4道
01

产品研发

【题目描述】

一家公司正在研发一款新产品。该产品共有 K 项关键性能指标,初始时所有指标均为 0。公司的最终目标是让每一项指标都不低于 P。

研发团队提出了 N 个独立的改进方案。第 i 个方案一旦实施,会同时为第 j 项指标(1≤ j≤ K)带来 Ai,j 的提升,但实施该方案需要投入 Cᵢ 的研发成本。每个方案最多只能执行一次。

你需要判断:是否存在一系列方案的选择,使得所有指标均达到或超过 P?如果存在,请给出最小的总研发成本;如果不存在,输出 -1。

25分
登录后作答
02

传话对象

【题目描述】

在一个公司里,有 n 名员工,编号 1 到 n。每名员工都有一个“传话对象”,即第 i 名员工只会把消息告诉第 tᵢ 名员工(允许告诉自己)。现在,从每名员工出发,依次沿着传话对象传递消息,可以证明经过有限步后,消息一定会回到一个已经传过消息的员工。

请你分别计算:从第 i 名员工开始,需要传递多少步后,才会第一次遇到一个已经传过消息的员工。

25分
登录后作答
03

能量护盾

【题目描述】

在一处被宇宙射线笼罩的星域中,你驾驶着一艘小型探索飞船,需要从坐标 (xs,ys) 航行到坐标 (xt,yt)。

飞船可以以速度 1 向任意方向移动,自身视为一个点。

星域中分布着 N 个圆形能量护盾,第 i 个护盾的圆心为 (xᵢ,yᵢ),半径为 rᵢ。护盾之间可能相互重叠,也可能存在包含关系。

飞船一旦进入某个护盾的内部,就能免受宇宙射线的伤害。若一个点不在任何护盾内部,则飞船会持续受到宇宙射线的照射。

你的目标是:在从起点到终点的航行过程中,尽可能减少受到宇宙射线照射的总时间。

请你计算这个最小照射时间。

25分
登录后作答
04

图书馆

【题目描述】

某城市有 n 条东西向街道和 n 条南北向街道,构成一个 n× n 的街区网格。

每个交叉路口处恰好建有一座图书馆,且每一行、每一列的交叉路口都恰好有一座图书馆。

已知第 i 座图书馆的坐标 (xᵢ,yᵢ) 表示它位于第 xᵢ 条东西向街道与第 yᵢ 条南北向街道的交汇处。

城市规划师想要知道:有多少个正方形区域(由连续的若干条东西向街道和连续的若干条南北向街道围成),使得该区域内每一行、每一列也恰好各有一座图书馆?

【输入格式】

第一行,一个整数 n。第二行,n 个整数 x₁,x₂,…,xₙ,表示第 i 座图书馆的东西向街道编号。第三行,n 个整数 y₁,y₂,…,yₙ,表示第 i 座图书馆的南北向街道编号。输入保证:1≤ xᵢ,yᵢ≤ n,且每行每列恰好只有一座图书馆。

【输出格式】

输出一个整数,表示满足条件的正方形区域个数。

【数据范围 / 提示】

数据范围:

1≤n≤10^5

1≤xi,yi≤n

输入保证每行每列恰好有一座图书馆。

25分
登录后作答