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 山西

相关推荐

10-30 19:23
已编辑
山东大学(威海) C++
牛至超人:我了个雷 1.实习经历写太长了吧,精简一点,你写那么老多,面试官看着都烦 2.项目经历你放俩竞赛干啥单独拿出来写上几等奖就行了呗 3.一大雷点就是项目经历里的那个课程设计,大家都知道课程设计巨水,不要写课程设计,换一个名字,就叫学生管理系统,面试官问就说是自己做的项目,不要提课程设计的事 4.那个交流经历,简化一下塞到最上面的教育经历里就行了 5.简历尽量一页纸
点赞 评论 收藏
分享
评论
9
27
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务