作业帮笔试输入输出坑
第一道
public class Main { public static void main(String[] args){ Scanner sc= new Scanner(System.in); String[] split = sc.nextLine().replace("[","").replace("]","").replace(" ","").split(","); int[] arr = new int[split.length]; for(int i=0;i<split.length;i++){ arr[i] = Integer.parseInt(split[i]); } int target = sc.nextInt(); List<int[]> list =getTarget(arr,target); for(int i=0;i<list.size();i++){ System.out.println(list.get(i)[0]+","+list.get(i)[1]); } } public static List<int[]> getTarget(int[] arr,int target){ List<int[]> list = new ArrayList<>(); if(arr.length==0){return list;} if(arr==null){return null;} int start=0; int end=arr.length-1; while(start<end){ int[] res = new int[2]; if(arr[start]+arr[end]==target){ res[0] = arr[start]; res[1] = arr[end]; list.add(res); start++; end--; }else if(target>(arr[start]+arr[end])){ start++; }else { end--; } } return list; } }2.
public class Main1 { public static void main(String[] args){ Scanner sc = new Scanner(System.in); String res = Main1.reverse(sc.nextLine()); System.out.println(res); } public static String reverse(String str){ int len = str.length(); char[] chars = str.toCharArray(); StringBuffer s = new StringBuffer(); for(int i=len-1;i>=0;i--){ s.append(chars[i]); } return s.toString(); } }3.
public class Main2 { public static void main(String[] args){ Scanner sc= new Scanner(System.in); String[] split = sc.nextLine().replace("[","").replace("]","").replace(" ","").split(","); int[] arr = new int[split.length]; for(int i=0;i<split.length;i++){ arr[i] = Integer.parseInt(split[i]); } System.out.println(longString(arr)); } public static int longString(int[] arr){ int max=0; HashMap<Integer,Integer> map = new HashMap<>(); for(int i:arr){ if(map.getOrDefault(i,0)==0){ int l = map.getOrDefault(i-1,0); int r = map.getOrDefault(i+1,0); map.put(i,l+r+1); if(l!=0){ map.put(i-l,l+r+1); } if(r!=0){ map.put(i+r,r+l+1); } max = max>(l+r+1)?max:(l+r+1); } } return max; } }
1.3题差点死在输入输出上,最后6分钟才醒悟输出格式不对!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!