数位和相等
问题描述
如果一个正整数转化成二进制与转换成八进制后所有数位的数字之和相等,则称为数位和相等的数。
前几个数位和相等的正整数为 11, 88, 99, 6464,……
请问第 2323 个数位和相等的正整数是多少?
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scan=new Scanner(System.in);
int count=0;
int num=0;
for(int i=0;count<=23;i++){
String n2=Integer.toString(i,2);
String n8=Integer.toString(i,8);
if (fun(n2) == fun(n8)) {
count++;
}
num=i;
}
System.out.println(num);
}
public static int fun(String n){
int sum=0;
for(int i=0;i<n.length();i++){
sum+=(n.charAt(i)-'0');
}
return sum;
}
}