单点时限: 2.0 sec
内存限制: 256 MB
简而言之,本题任务就是解方程。共有两个子任务。
作为小学生,我们只会解一元一次方程,一元一次方程最终都可以化为 $ax=n$ 的形式。现在问:对于给定的 $n$,要使得 $x$ 有正整数解,总共可以取多少个不同的 $a$ 呢?
作为中学生,我们只会解二元一次不定方程,二元一次不定方程最终都可以化为 $ax+by=n$ 的形式。现在问:对于给定的 $n$,要使得 $x,y$ 有正整数解,总共可以取多少对不同的 $(a,b)$ 呢?
输出一行两个整数 $q,n$ $(q \in {1,2})$。
$q=1$ 表示你现在要解决小学生的情况,$q=2$ 表示你现在要解决中学生的情况。
数据规模约定(每个测试点占本题总分值的 $10\%$):
测试点 | $q$ | $n$ |
---|---|---|
1 | $=1$ | $1 \leq n \leq 1~000$ |
2, 3 | $=1$ | $1 \leq n \leq 300~000$ |
4, 5 | $=2$ | $1 \leq n \leq 50$ |
6, 7 | $=2$ | $1 \leq n \leq 500$ |
8, 9 | $=2$ | $1 \leq n \leq 50~000$ |
10 | $=2$ | $1 \leq n \leq 300~000$ |
输出一个整数,表示答案。
2 4
6
1 10
4
当 $q=1,n=10$ 时,$a$ 可以取 $1,2,5,10$。
当 $q=2, n=4$ 时,$(a,b)$ 可以取 $(1,1), (1,2), (1,3), (2,1), (2,2), (3,1)$。