测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

A7234. 促销活动

编程题 普及-
知识点

题目描述

在一个大型超市里,今天正进行着一个促销活动。每个商品都有不同的价格,而该超市设置了一些规则,鼓励顾客购买一系列连续的商品。活动的目的是找到一系列价格连续的商品,并且价格总和为某个目标值 $M$,顾客购买这些商品时,超市会提供折扣。

例如,顾客购买的商品价格分别为 $1998, 1999, 2000, 2001, 2002$,它们的总和为 $10000$,因此这组商品就符合活动要求,顾客会获得优惠。

超市的工作人员需要帮助顾客找出所有符合条件的连续商品段,确保每一段至少包含两个商品,并且价格总和恰好为给定的目标金额 $M$。

输入格式

给出一个正整数 $M$,表示顾客希望购买的商品价格总和。

输出格式

输出多个符合条件的连续商品段,每一行包含两个整数,表示该段商品的第一个和最后一个商品的价格,两个数之间用空格隔开。

输出的行按从小到大的升序排列。

输入输出样例

输入 #1
10000
输出 #1
18 142
297 328
388 412
1998 2002

说明/提示

### 样例解释:

第一个符合条件的商品段从 $18$ 到 $142$,它们的价格总和为 $10000$。
第二个商品段从 $297$ 到 $328$,其价格总和也是 $10000$,依此类推。

每行两个正整数,给出一个满足条件的连续价格的商品段,输出其中的第一个数和最后一个数,两数之间用一个空格隔开,所有输出行的第一个按从小到大的升序排列,对于给定的输入数据,保证至少有一个解。

### 数据范围:

$10 \le M \le 2 \times 10^{6}$
上一题 去做题 下一题