#12024. Interesting Math / 趣味数学
Interesting Math / 趣味数学
Problem J36: Interesting Math / 趣味数学
版权信息: · 来源:马克思手稿中的趣味问题
任务总览
任务名称 | 时间限制 | 内存限制 | 分数 |
---|---|---|---|
趣味数学 | 1 sec | 1024 MB | 10 points |
题目描述
马克思在手稿中提出了一道趣味数学题:
有 30 个人在一家饭馆吃饭,总共花费了 50 先令。其中这 30 人中包括:
- 男人,每人花费 3 先令;
- 女人,每人花费 2 先令;
- 小孩,每人花费 1 先令。
请你求出所有满足以下两个条件的整数解:
- 三类人数之和恰好为 30;
- 三类人的消费之和恰好为 50 先令。
输出所有可能的 $(男, 女, 小孩)$ 组合。
输入格式
无输入。
输出格式
输出所有满足条件的解。每个方案一行,格式如下:
男 女人数 小孩数
三类人数之间用一个空格隔开,行与行之间按男人人数递增顺序输出。
输入输出样例
输出示例
0 20 10
1 18 11
2 16 12
3 14 13
4 12 14
5 10 15
6 8 16
7 6 17
8 4 18
9 2 19
10 0 20
题目分析与解法
✅ 数学建模:
设男人数为 ,女人数为 ,小孩数为 ,则:
将上述联立方程化简:
进一步消元并枚举 即可。
时间复杂度分析
操作 | 复杂度 |
---|---|
枚举 | |
计算其余项 | |
总复杂度 | (常数解)** |