计算机能力挑战赛 java
时间: 2023-11-21 08:59:14 浏览: 40
以下是两道计算机能力挑战赛的Java题目的实现:
1. 模拟题目:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int a = scanner.nextInt();
int ans = 0;
if (a % 2 == 0) {
for (int i = 2; i <= a; i += 2) {
int t = 0;
for (int j = 0; j < i; j++) {
t *= 10;
t += a;
}
ans += t;
}
} else {
for (int i = 1; i <= a; i += 2) {
int t = 0;
for (int j = 0; j < i; j++) {
t *= 10;
t += a;
}
ans += t;
}
}
System.out.println(ans);
}
}
```
2. 动态规划题目:
```java
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
int[][] nums = new int[][]{
{2, 3},
{3, 3},
{2, 4},
{3, 5},
{5, 4},
{2, 1},
{2, 2},
};
int[] record = new int[n + 1];
for (int i = 0; i < nums.length; i++) {
for (int j = n; j >= nums[i][0]; j--) {
record[j] = Math.max(record[j], record[j - nums[i][0]] + nums[i][1]);
}
}
System.out.println(record[n]);
}
}
```