关注
不知道它这个是怎么判题的,我也是这样输入一个求解一个,但是用下面的办法是可以ac的。
import java.util.Scanner;
public class Main {
public static void main(String args[])
{
boolean[] B = new boolean[100000 + 1];
for (int i = 1; i < 100000 + 1; i++) {
int binary =g(i);
int ten = f(i);
if (binary == ten)
B[i] = true;
}
Scanner cin = new Scanner(System.in);
int times = cin.nextInt();
for (int i = 0; i < times; i++) {
int n = cin.nextInt();
int count = 0;
for (int j = 1; j <= n; j++) {{
if (B[j])
count++;
}
}
System.out.println(count);
}
}
private static int f(int num){
String str = String.valueOf(num);
int sum = 0;
for(int i = str.length() - 1;i>=0;i--){
sum+=Integer.valueOf(str.charAt(i)+"");
}
return sum;
}
private static int g(int num){
String str = Integer.toBinaryString(num);
int sum = 0;
for(int i = 0;i<str.length();i++){
sum+=Integer.valueOf(str.charAt(i)+"");
}
return sum;
}
}
查看原帖
点赞 3
相关推荐
查看9道真题和解析 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 26届春招投递记录 #
54553次浏览 445人参与
# 多益网络工作体验 #
73908次浏览 316人参与
# 实习生的蛐蛐区 #
977864次浏览 4910人参与
# 找工作时的取与舍 #
138942次浏览 925人参与
# 27届实习投递记录 #
151173次浏览 1577人参与
# 多益网络求职进展汇总 #
108792次浏览 409人参与
# 一起聊华为 #
221473次浏览 972人参与
# 实习,不懂就问 #
221400次浏览 1721人参与
# 薪资一样,你会选择去大厂还是小公司 #
35556次浏览 133人参与
# 实习的内耗时刻 #
242810次浏览 1670人参与
# 求职中的尴尬瞬间 #
42389次浏览 125人参与
# 发工资后,你做的第一件事是什么 #
107771次浏览 348人参与
# 新凯来求职进展汇总 #
82915次浏览 195人参与
# 牛友投递互助,不漏校招机会 #
495548次浏览 5371人参与
# 非技术2024笔面经 #
515115次浏览 5058人参与
# 社会教会你的第一课 #
134460次浏览 874人参与
# 牛友们,签完三方你在忙什么? #
153852次浏览 1026人参与
# 你找工作的时候用AI吗? #
215051次浏览 1032人参与
# 听劝,这个简历怎么改 #
423253次浏览 1901人参与
# 哪个瞬间让你对大厂祛魅了? #
646261次浏览 4030人参与