Java习题练习:1301 Zeroes

阅读 20

2022-08-08


目录

  • ​​🍋问题描述​​
  • ​​🍋解题思路​​
  • ​​🍋解题代码​​

🍋问题描述

Java习题练习:1301 Zeroes_i++

🍋解题思路

模拟题。
按着题目的意思做就可以了。
需要注意的是最后一个数是跟未变化的第一个数进行比较。所以要定义一个中间变量把未变化的第一个数存起来。
其他的没什么大问题了。

🍋解题代码

import java.util.Scanner;

public class Main {

static int []a;
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in);
int t =in.nextInt();
for(int i=0;i<t;i++) {
int n=in.nextInt();
a=new int [n];
for(int j=0;j<n;j++) {
a[j]=in.nextInt();
}
int ans=0;
while(true) {//不要全抄代码
if(!f(a)) {//自己学会整体思路,自己来写一下。
ans++;
}
else {
System.out.println(ans+1);
break;
}
if(ans>=1000) {
System.out.println("Impossible");
break;
}
}

}
}
static boolean f(int []a) {
int t=a[0];
for(int i=0;i<a.length;i++) {
if(i==a.length-1) {
a[i]=Math.abs(t-a[i]);
}
else
a[i]=Math.abs(a[i+1]-a[i]);
}
for(int i=0;i<a.length;i++) {
if(a[i]!=0)
return false;
}
return true;
}

}


精彩评论(0)

0 0 举报