1.某星球存在两种生物,A种生物有1个头6条腿,B种生物有3个头4条腿。来自地球的太空船刚刚在该星球降落,突然发现一大群这两种生物组成的队伍,由于时间紧,只数了头的数量和腿的数量,请帮助宇航员分析A、B两种生物各有多少个。
输入说明:头的数量L腿的数量Z,(L,Z<=100000);输出说明:A生物的数量B生物的数量(两个整数用一个空格隔开);输入样例:10 32输出样例:4 2

 public static void main(String [] s){
        Scanner input1=new Scanner(System.in);
        int L=input1.nextInt();
        int Z=input1.nextInt();
        int y=(6*L-Z)/14;
        int x=L-3*y;
       System.out.print(x+" "+y);
}

 

2.对于给出的长度为N(N<1000)的正整数数组,满足连续3个元素均为合数的区间称为3合数区间,计算该数组中3合数区间的个数。
输入说明:第一行,数组中元素个数N,第二行,N个正整数,用空格隔开。
输出说明:3合数区间的个数
输入样例:
7
6 8 4 9 7 5 8
输出样例:
2

 public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int result = 0;
        int N = in.nextInt();
        int[] val = new int[N];
        for (int i = 0;i < N;i++) {
            val[i] = in.nextInt();
        }

        for (int i = 0;i < val.length - 2;i++) {
            boolean is = true;
            for (int j = i;j < i + 3;j++) {
                if (!isPrime(val[j])) { //如果val[j]不是合数
                    is = false;
                }
            }
            if (is) {
                result++;
            }
        }
        System.out.println(result);
    }
    public static boolean isPrime(int n) {  //判断是否为合数
        boolean flag = false;
        for (int i = 2; i < n/2; i++) {
            if (n % i == 0) {
                flag = true;
            }
        }
        return flag;
    }

 

3.给定两个字符串,均只包含英文字母,需区分大小写,一个是源字符串SS(长度<1000),另一个是目标字符串TS(长度<1000),请问能否通过删除SS中的字符(不改变顺序)将它变换成TS,如果可以输出“YES”,不可以则输出“NO”。

输入说明:第一行为源字符串SS,第二行为目标字符串TS。
输出说明:可以输出“YES”,不可以输出“NO”。
输入样例1:Thereisacomputer Treat输出样例1:YES输入样例2:Thereisacomputer Trait输出样例2:NO

 public static void main(String [] s){    
    Scanner input1=new Scanner(System.in);
            String SS=input1.nextLine();
            String TS=input1.nextLine();
            int n=0;
            int j=0;
            for(int i=0;i<TS.length();i++)
            {
                for(;j<SS.length();j++)
                {
                    if(SS.charAt(j)==TS.charAt(i))
                    {
                        System.out.print(TS.charAt(i));
                        n++;
                        break;
                    }
                }
            }
           if(n==TS.length())
                System.out.print("YES");
              else
                    System.out.print("NO");
}

 

总的来说,感觉这个比赛是让你快速做题,时间卡的紧,但都是很简单的暴力解决。第三题我曾想着用滑动窗口写,但发现确实是浪费时间了。

版权声明:本文为xxsdbk原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/xxsdbk/p/15218777.html