关注
现在做出来了 ,, 真的是脑子短路的厉害。 package 爱奇艺0910;
import java.util.Arrays;
import java.util.Scanner;
public class Demo3 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while(true){
int n = sc.nextInt();
int m = sc.nextInt();
System.out.println(fun(n,m));
}
}
private static int fun(int n, int m) {
int[][] dp = new int[n+1][m+1];
dp[1][1] = 1;
//第一行
for (int i = 1; i < dp.length; i++) {
if((Math.sqrt(i)*(Math.sqrt(i)) == i)){//是整数
dp[i][1] = dp[i-1][1]+1;
}else{
dp[i][1] = dp[i-1][1];
}
}
//第一列
for (int i = 1; i < dp[0].length; i++) {
if((Math.sqrt(i)*(Math.sqrt(i)) == i)){//是整数
dp[1][i] = dp[1][i-1]+1;
}else{
dp[1][i] = dp[1][i-1];
}
}
//dp[i][j] = dp[i-1][j]+{i、1~j 中符号条件的个数}
for (int i = 2; i < dp.length; i++) {
for (int j = 2; j < dp[0].length; j++) {
int count = 0;
for (int k = 1; k <= j; k++) {
if(sqrt(i*k)*sqrt(i*k) == i*k){
count++;
}
}
dp[i][j] = dp[i-1][j]+count;
count = 0;
}
}
for (int i = 0; i < dp.length; i++) {
System.out.println(Arrays.toString(dp[i]));
}
return dp[n][m];
}
public static int sqrt(int x) {
if(x<=1) {
return x;
}
int begin = 1;
int end = x;
int middle = 0;
while(begin<=end) {
middle = begin + (end - begin)/2;
//不要写成middle*middle==x,会溢出
if(middle==x/middle) {
return middle;
} else {
if (middle<x/middle) {
begin = middle + 1;
} else {
end = middle - 1;
}
}
}
//结束条件end一定<begin,所以返回end
return end;
}
}
查看原帖
点赞 4
相关推荐
04-27 11:02
西南财经大学 经济学类 点赞 评论 收藏
转发
牛客热帖
正在热议
# 牛客帮帮团来啦!有问必答 #
952707次浏览 14759人参与
# 机械制造薪资爆料 #
336842次浏览 3986人参与
# 和牛牛一起刷题打卡 #
1497次浏览 171人参与
# 如何写一份好简历 #
294980次浏览 4267人参与
# 腾讯工作体验 #
143694次浏览 1392人参与
# 硬件兄弟们 甩出你的华为奖状 #
32424次浏览 202人参与
# 晒一晒我的offer #
3616240次浏览 56621人参与
# 浅聊一下我实习的辛苦费 #
90713次浏览 878人参与
# 投了多少份简历才上岸 #
65160次浏览 1032人参与
# 如果校招重来我最想改变的是 #
92701次浏览 1563人参与
# 你的秋招进行到哪一步了 #
382683次浏览 6539人参与
# 25届如何提前做秋招准备? #
14751次浏览 467人参与
# 通信硬件公司评价 #
31316次浏览 220人参与
# 产品人专业大盘点 #
14608次浏览 112人参与
# 机械专业只有考研才有出路吗 #
24949次浏览 437人参与
# 你的简历改到第几版了 #
320228次浏览 4789人参与
# 我的上岸简历长这样 #
188922次浏览 3750人参与
# 机械人,你的秋招第一份简历被谁挂了 #
35406次浏览 596人参与
# 你觉得通信/硬件有必要实习吗? #
24615次浏览 439人参与
# 实习与准备秋招该如何平衡 #
189167次浏览 3351人参与