P5534 等差数列
import java.util.Scanner;
public class Main {
static long[][][] sheet = new long[30][30][30];
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
long a = scanner.nextInt();
long b = scanner.nextInt();
long n = scanner.nextInt();
long sn = n * a + n * (n - 1) * (b - a) / 2;
System.out.print(sn);
scanner.close();
}
}
注:实在是简单,不过得全部改成long
P1192 台阶问题 题解
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int k = scanner.nextInt();
int[] arr = new int[1000005];
arr[0] = 1;
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= i && j <= k; j++) {
arr[i] += arr[i - j];
arr[i] %= 100003;
}
}
scanner.close();
System.out.print(arr[n]);
}
}
注:没有用递归,理解了很简单,没理解很痛苦
有大佬发现的规律:
(今天做题状态很差,一个没啥用的课,在答辩,很久才轮到我)