public class pdd03 {
public static void main(String[] args) {
int[] dp1 = new int[11];//代表正方形数
int[] dp2 = new int[11];//代表木棍数
Scanner scanner = new Scanner(System.in);
int n = scanner.nextInt();
if (n==1){
System.out.println(dp1[1]);
}
dp1[1] = 1;
dp2[1] = 4;
for (int i = 2; i <= 10; i++) {
dp2[i] = dp2[i - 1] + 12 + (i * i - (i - 1) * (i - 1)) * 8;
dp1[i]=(i+2)*(i+2);
}
for (int i = 1; i <= 10; i++) {
if (n == dp2[i]){
System.out.println(dp1[i]);
return;
}
if (n<dp2[i] && n>dp2[i-1]){
if (n<dp2[i]-(i * i - (i - 1) * (i - 1)) * 8){
System.out.println(dp1[i-1]+(n-dp2[i-1])/3);
}else {
System.out.println(dp1[i-1]+4+(n-dp2[i-1]-12)/2);
}
return;
}
}
}
}
全部评论
(2) 回帖