8-30携程笔试
第一题:q次询问。整数重拍后为偶数,有多解时输出任意,不存在输出-1
通过30%
不知道错在哪里,有大佬帮看看吗
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n=sc.nextInt(); sc.nextLine(); for(int i=0;i<n;i++){ String s=sc.nextLine(); System.out.println(test(s)); } } public static int test(String s){ StringBuffer sb = new StringBuffer(s); int size=sb.length(); boolean flag=true; for (int i=0;i<size;i++ ){ if(isO(sb.charAt(i)-'0')){ flag=false; } } for(int i=0;i<size;i++){ if(isO(sb.charAt(i)-'0')){ char ch=sb.charAt(i); sb.deleteCharAt(i); sb.append(ch); break; } } if (flag){ return -1; } int ret = Integer.parseInt(sb.toString()); return ret; } public static boolean isO(int x){ if(x%2==0){ return true; }else { return false; } } }