我正在做谷歌代码堵塞的一个问题,我在这一点上陷入困境。代码编译正确,但输入'N'后,它不会更进一步。看起来像一个逻辑错误,但当我干运行代码,它看起来很好。这可能是什么问题?问题在于https://code.google.com/codejam/contest/6254486/dashboard
public class Counting_Sheep
{
static int haha,digit,j;
static int arr[]=new int[11];
public static void main(String args[])throws IOException{
BufferedReader obj=new BufferedReader(new InputStreamReader(System.in));
Scanner in= new Scanner(System.in);
System.out.println("Number of test cases");
int t=in.nextInt();
System.out.println("Enter N by Bleatrix");
int n=Integer.parseInt(obj.readLine());
if(n==0){
System.out.println("INSOMNIA");
System.exit(0);
}
for(int i=1;i<=n+1;i++){
haha=i*n;
numbercalculator(haha);
}
for(int i=0;i<11;i++)
System.out.println(arr[i]);
}
static void numbercalculator(int a){
while(a>0){
digit=a%10;
if(digitIsUnique(digit)){
arr[j]=digit;
j++;
}
}
}
static boolean digitIsUnique(int b){
for(int i=0;i<11;i++){
if(b==arr[i])
return false;
else
return true;
}
return false;
}
}
答案 0 :(得分:1)
这不是无限循环吗?
while(a>0){
digit=a%10;
if(digitIsUnique(digit)){
arr[j]=digit;
j++;
}
}