360笔试0827AK

第一题,纸上一串大写字符,判断反过来是否和正过来是一样的

  • 思路很简单,判断字符串是否是回文的以及是否有非左右对称的字符
    import java.util.*;
    public class Main {
      public static void main(String[] args) {
          Scanner scanner = new Scanner(System.in);
          Set<Character> set = new HashSet<>();
          set.add('A');
          set.add('H');
          set.add('I');
          set.add('M');
          set.add('O');
          set.add('T');
          set.add('U');
          set.add('V');
          set.add('W');
          set.add('X');
          set.add('Y');
          String line = scanner.nextLine();
          while(!line.isEmpty()) {
              boolean isValid = true;
              int n = line.length();
              char[] rev = new char[n];
              for(int i=0; i<n;i++){
                  rev[i] = line.charAt(n - 1 - i);
              }
              for(int i=0; i<n; i++) {
                  if(rev[i] != line.charAt(i)){
                      isValid = false;
                      break;
                  }
                  if(!set.contains(rev[i])){
                      isValid = false;
                      break;
                  }
              }
              if(isValid){
                  System.out.println("YES");
              } else{
                  System.out.println("NO");
              }
              line = scanner.nextLine();
          }
      }
    }

第二题,四个数abcd分别代表1个人的队的数量,2个人的队的数量,3个人的队的数量和4个人的队的数量,问你最后能凑到几个四个人的队

  • 思路是,3和1先配,然后2和2配,然后2和1配,具体思路见代码啦~并不复杂
    import java.util.*;
    public class Main2 {
      public static void main(String[] args) {
          Scanner scanner = new Scanner(System.in);
          int T = scanner.nextInt();
          while (T-->0) {
              int a = scanner.nextInt();
              int b = scanner.nextInt();
              int c = scanner.nextInt();
              int d = scanner.nextInt();
              int res = 0;
              res += d;
              res += Math.min(a, c);
              a -= Math.min(a, c);
              res += b/2;
              b = b%2;
              res += Math.min(b, a/2);
              a -= 2*Math.min(b, a/2);
              res += a/4;
              System.out.println(res);
          }
      }
    }
    今天三场笔试真的累趴了,本来是四场,把晚上客户端的网易给鸽了做了好未来,希望早日能有offer,加油!
#360笔试##笔经#
全部评论
一天安排这么多啊
点赞 回复 分享
发布于 2022-10-25 16:38 山西

相关推荐

评论
9
26
分享
牛客网
牛客企业服务