UOJ Logo LFYZ Online Judge

LFYZOJ

#110. 论编辑器的和谐共处

统计

这是一道交互题。

本题语言仅支持 C++。使用其他语言提交,分数将得不到保证。

问题描述

临汾一中有许多(?)OIer。他们分为三类:

  • $n$ 个惯用 vim 的
  • $m$ 个惯用 Emacs 的
  • $r$ 个啥都用的

啥都用的 OIer,你可以给他用 vim,也可以给他用 Emacs。

当一个群体的 vim 使用人数和 Emacs 的使用人数一样时,这个群体才是和谐(?)的。

请你最大化和谐群体的人数。

任务介绍

你需要实现一个函数 play(n, m, r)。这个函数的意思是这样的:

给你 $n,m,r$ (意义见问题描述),请你返回“两种编辑器中,使用人数相对较少的那个编辑器的使用人数”的最大的可能值。

实现方法

你的源代码中需要包含头文件 exc.h,也就是应有#include "exc.h"

你需要实现的函数是

int play(int n, int m, int r);

你不应该书写 main() 函数。

怎样测试你的程序

我们下发了 implementer.cppexc.h,编译命令是

g++ -o code implementer.cpp code.cpp -lm -O2 -DONLINE_JUDGE

可执行文件将从标准输入读入不定个整数。对于下发的 implementer.cpp ,我们将打印 $n,m,r$ 和你的返回值以便你核查你的答案是否正确。

实际评测时使用的 implementer.cpp 和下发的是不一样的。因此,请勿自行输出任何信息,否则你的分数将得不到保证。

攻击测评系统,修改测评内容,一经发现,帐号将被封停。

输入格式

不定行,每行三个整数 $n,m,r$。

输出格式

你不需要输出,返回你的答案即可。

样例一

input

1 5 0
4 2 2
5 7 9

output

2
8
20

explanation

上述 output 是合法的返回答案。

对于第一组数据,有 $1$ 个用 vim 的,$5$ 个用 Emacs 的,因此最大的和谐群体的人数是 $2$。

对于第二组数据,我们可以钦定那 $2$ 个什么都用的人都用 Emacs,这样 vim 和 Emacs 的使用人数都是 $4$,最大的和谐群体人数是 $8$。

对于第三组数据,我们可以钦定那 $9$ 个什么都用的人 $6$ 个人用 vim,$3$ 个人用 Emacs,这样 vim 的使用人数都是 $11$,Emacs 的使用人数是 $10$,最大的和谐群体人数是 $20$。当然,你也可以钦定那 $9$ 个什么都用的人 $5$ 个人用 vim,$4$ 个人用 Emacs,这样 vim 的使用人数都是 $10$,Emacs 的使用人数是 $11$,最大的和谐群体人数是 $20$。

数据范围与约定

对于 $100\%$ 的数据,每个 $n,m,r \in [0,100]$。你的 play() 函数最多被调用 $100$ 次。

虽然在官方测试数据中,你的 play() 函数最多被调用 $100$ 次。

保证在任何情况下,交互库所占用的时间不会超过 $1\mathrm{s}$ ,占用的空间不会超过 $64\mathrm{MB}$。因此,选手实际可用的时间至少有 $1\mathrm{s}$ ,实际可用的空间最少有 $192\mathrm{MB}$。

时间限制: $2\mathrm{s}$

内存限制: $256\mathrm{MB}$

下载内容

交互库下载

来源

cf 950a