QOJ.ac

QOJ

Total points: 100 Output Only

#5298. 小 Q 运动季

Statistics

为了鼓励人们多参加运动,小 Q 所在的 CD 市的体育中心有一项长期的积分送礼活动。

体育中心有许多项运动,每项运动有一个固定的非负整数积分,每参加一次该项运动可以积累相应的一次积分。体育中心每个月都会推出一种新的礼品,当月积分大于等于当月的礼品积分时,就可以用相应的积分值换取一份礼品。每月的礼品可以多次换取,每次均扣除相同的积分。为了鼓励人们及时兑换奖品,每月的积分都只能在当月使用,不能积累到下一个月。

小 Q 是个运动达人,平时的爱好就是邀请一群朋友到体育中心参加各类体育项目。因为有朋友的帮助,小 Q 每月都可以换得很多的礼品。

新的一月快要到了,小 Q 又开始了对下一月运动的计划。可是,小 Q 发现他记录每项体育运动积分的表格不见了。这份表格可是小 Q 花了一年时间收集,记录了体育中心大大小小所有体育项目积分的表格。

万分沮丧的小 Q 突然想起他还有记录每个月参加每个项目次数的习惯。后来他又来到体育中心网站上查到了他每个月的剩余积分,也就是他当月的总积分扣除若干份礼物的所需要的积分后剩下的积分。至于每个月小 Q 领了多少份礼物,小 Q 自己也不记得了。

小 Q 想,用这些数据也许能求出每项运动的积分。经过推导,小 Q 发现如果某一个月的记录出错了,很有可能就会出现无解的情况。小 Q 每个月参加的体育项目很多,记错一两次也是很正常的。

最后小 Q 想了一个比较折中的办法:求每项运动的积分,使这个积分能满足尽量多月份的记录。

由于小 Q 还要去参加今天的体育运动,所以这个问题和众多的问题一样,要交给学信息学竞赛的你。

输入格式

该题为提交答案型试题,所有输入数据 sports1.in ~ sports10.in 见下发文件。

输入的第一行包含两个正整数 $n, m$,分别表示体育项目的个数和有记录的月份数。

接下来有 $m$ 行,每行有 $n + 2$ 个非负整数,表示一个月的记录。前 $n$ 个数中的第 $i$ 个数表示小Q在该月参加第 $i$ 个体育项目的次数,第 $n + 1$ 个数表示该月兑换一份礼物所需的积分,第 $n + 2$ 个数表示兑换了若干次礼物以后剩余的积分。

保证输入每个数均不超过 $2^{31} - 1$。

输入文件的末尾包含 $8$ 行,每行包含一个整数,为参数 $a_3, a_4, \dots, a_{10}$,意义见评分方法。

输出格式

针对给定的 10 个输入文件 sports1.in ~ sports10.in,你需要分别提交你的输出文件 sports1.out ~ sports10.out。

每个输出文件输出 $n$ 行,每行包含一个小于 $10^{10m}$(不超过 $10m$ 位)的非负整数。其中第 $i$ 行表示第 $i$ 个体育项目的积分。

请注意,对于每个测试点,你的输出文件不能超过 1MB(1048576 字节),否则认为该测试点错误

样例输入

2 4
2 0 4 2
0 2 3 1
5 7 24 16
2 0 4 5
2
2
1
1
0
0
0
0

样例输出

7
11

样例说明

第 1 条记录:$2 \times 7 + 0 \times 11 = 14$,兑换 $3$ 次奖品后剩余 $2$ 分;

第 2 条记录:$0 \times 7 + 2 \times 11 = 22$,兑换 $7$ 次奖品后剩余 $1$ 分;

第 3 条记录:$5 \times 7 + 7 \times 11 = 112$,兑换 $4$ 次奖品后剩余 $16$ 分;

第 4 条记录:无论如何设定每个体育项目的得分,都无法满足该条记录。

评分方法

对于每组数据,我们设置了 $8$ 个评分参数 $a_3, a_4, \dots, a_{10}$。如果选手的输出不合法,则得零分。否则,设在你的方案中,满足的月份个数为 $w_{\text{user}}$,我们给出的答案的月份个数为 $w_{\text{std}}$,你的分数将会由下表给出:

得分条件得分条件
10$w_{\text{std}} - w_{\text{user}} \leq a_{10}$5$w_{\text{std}} - w_{\text{user}} \leq a_5$
9$w_{\text{std}} - w_{\text{user}} \leq a_9$4$w_{\text{std}} - w_{\text{user}} \leq a_4$
8$w_{\text{std}} - w_{\text{user}} \leq a_8$3$w_{\text{std}} - w_{\text{user}} \leq a_3$
7$w_{\text{std}} - w_{\text{user}} \leq a_7$2$w_{\text{user}} \geq 0$
6$w_{\text{std}} - w_{\text{user}} \leq a_6$1$w_{\text{user}} \geq 0$

如果有多项满足,则取满足条件中的最高得分。


or upload files one by one:
About Issues

We understand that our problem archive is not perfect. If you find any issues with the problem, including the statement, scoring configuration, time/memory limits, test cases, etc.

You may use this form to submit an issue regarding the problem. A problem moderator will review your issue and proceed it properly.

STOP! Before you submit an issue, please READ the following guidelines:

  1. This is not a place to publish a discussion, editorial, or requests to debug your code. Your issue will only be visible by you and problem moderators. Other users will not be able to view or reply your issues.
  2. Do not submit duplicated issues. If you have already submitted one, please wait for an moderator to review it. Submitting multiple issues will not speed up the review process and might cause your account to be banned.
  3. Issues must be filed in English or Chinese only.
  4. Be sure your issue is related to this problem. If you need to submit an issue regarding another problem, contest, category, etc., you should submit it to the corresponding page.

Active Issues 0

No issues in this category.

Closed/Resolved Issues 0

No issues in this category.