import java.util.Scanner;
public class Main{
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
int a=sc.nextInt();
int sum1=0;
String[] ss=new String[a];
int[] b={7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};
int[] h={1,0,10,9,8,7,6,5,4,3,2};
for(int i=0;i<a;i++){
String s=sc.next();
int sum=0;
for(int j=0;j<17;j++){
if(s.charAt(j)=='x'){
sum=sum+10*b[j];
}
else{
sum=sum+(s.charAt(j)-'0')*b[j];
}
}
//System.out.println(sum);
int c;
if(s.charAt(17)=='x')
c=10;
else
c=s.charAt(17)-'0';
// System.out.println(c);
if(h[sum%11]!=c){
//System.out.println(s);
ss[sum1++]=s;
//System.out.println(ss[sum1-1]);
}
}
if(sum1==0){
System.out.println("All passed");
}
else{
for(int i=0;i<sum1;i++){
System.out.println(ss[i]);
}
}
}
}
为什么有一个样例过不去呀?
https://pintia.cn/problem-sets/994805046380707840/problems/994805122985476096
x可能是大写的,要对大写的X也判断
if(s.charAt(j)=='x' || s.charAt(j)=='X'){ //x可能是大写的,要对大写的X也判断
if(s.charAt(17)=='x' || s.charAt(17)=='X') //x可能是大写的,要对大写的X也判断
import java.util.Scanner;
public class Main{
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
int a=sc.nextInt();
int sum1=0;
String[] ss=new String[a];
int[] b={7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2};
int[] h={1,0,10,9,8,7,6,5,4,3,2};
for(int i=0;i<a;i++){
String s=sc.next();
int sum=0;
for(int j=0;j<17;j++){
if(s.charAt(j)=='x' || s.charAt(j)=='X'){ //x可能是大写的,要对大写的X也判断也
sum=sum+10*b[j];
}
else{
sum=sum+(s.charAt(j)-'0')*b[j];
}
}
//System.out.println(sum);
int c;
if(s.charAt(17)=='x' || s.charAt(17)=='X') //x可能是大写的,要对大写的X也判断也
c=10;
else
c=s.charAt(17)-'0';
// System.out.println(c);
if(h[sum%11]!=c){
//System.out.println(s);
ss[sum1++]=s;
//System.out.println(ss[sum1-1]);
}
}
if(sum1==0){
System.out.println("All passed");
}
else{
for(int i=0;i<sum1;i++){
System.out.println(ss[i]);
}
}
}
}
如有帮助,请点击我的回答下方的【采纳该答案】按钮帮忙采纳下,谢谢!
假如我都输入0,你这个程序会通过吗
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!