洛谷-P4956 [COCI2017-2018#6] Davor
题目描述
在征服南极之后,Davor 开始了一项新的挑战。下一步是在西伯利亚、格林兰、挪威的北极圈远征。他将在 (2018) 年 (12) 月 (31) 日开始出发,在这之前需要一共筹集 (n) 元钱。他打算在每个星期一筹集 (x) 元,星期二筹集 (x+k) 元,……,星期日筹集 (x+6k) 元,并在 (52) 个星期内筹集完。其中 (x,k) 为正整数,并且满足 (1 le x le 100)。
现在请你帮忙计算 (x,k) 为多少时,能刚好筹集 (n) 元。
如果有多个答案,输出 (x) 尽可能大,(k) 尽可能小的。注意 (k) 必须大于 (0)。
输入格式
输入的第一行包含整数N(1456≤N≤145600),即任务中的数字。
输出格式
输出的第一行必须包含X的值(0 <X≤100),第二行必须包含K的值(K> 0)。
输入输出样例
输入 #1
1456
输出 #1
1
1
输入 #2
6188
输出 #2
14
1
输入 #3
40404
输出 #3
99
4
C++代码
#include <iostream>
using namespace std;
int main() {
int n, m, x, k;
cin >> n;
for (x=100; x>0; --x)
for (k=1; k<145600; ++k)
if (n == 52 * (7 * x + 21 * k)) {
cout << x << '
' << k << endl;
return 0;
}
return 0;
}