作业帮笔试输入输出坑
第一道
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分钟才醒悟输出格式不对!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
