4.3w+
社区成员
今天模拟了。先研究一下模拟的题
第 1 题:找素数 最好用筛子解决
import java.util.*;
// 1:无需package
// 2: 类名必须Main, 不可修改
public class Main {
public static void main(String[] args) {
boolean []bs=new boolean [10000000];
Arrays.fill(bs, true);
int n=bs.length;
int c=0;
for(int i=2;i*i<n;i++)
if(bs[i])
for(int j=i*i;j<n;j+=i)
bs[j]=false;
for(int i=2;i<n;i++){
if(bs[i]) c++;
if(c==100002) {
c=i;
break;
}
}
System.out.println(c);
}
}
第 2 题:图书排列
import java.util.Scanner;
// 1:无需package
// 2: 类名必须Main, 不可修改
public class Main {
static int ant = 0;
static int[] list = {1,2,3,4,5,6,7,8,9,10};
public static void main(String[] args) {
dfs(0);
System.out.println(ant);
}
private static void dfs(int i) {
if (i == list.length) {
if (check()) {
ant++;
}
}
for (int j = i; j < list.length; ++j) {
swap(j,i);
dfs(i+1);
swap(j,i);
}
}
private static void swap(int i, int j) {
int temp = list[i];
list[i] = list[j];
list[j] = temp;
}
private static boolean check() {
int n = list.length;
for (int i = 0; i < n-1; i++) {
if (Math.abs(list[i]-list[i+1]) == 1) {
return false;
}
}
return true;
}
第 3 题:日志统计
第 4 题: 杨辉三角