m
Q1import java.util.ArrayList;import java.util.List;import java.util.Scanner;public class P1 {    public static void main(String[] args) {        Scanner scan = new Scanner(System.in);        int n = scan.nextInt();        List<List<Integer>> lists = new ArrayList<>();        backtrack(lists, new boolean[n], new ArrayList<>());        int ans = 0;        for (List<Integer> list : lists) ans += check(list) ? 1 : 0;        System.out.println(ans);    }    public static void backtrack(List<List<Integer>> lists, boolean[] used, List<Integer> list) {        if (list.size() == used.length) lists.add(new ArrayList<>(list));        else {            for (int i = 1; i <= used.length; i++) {                if (used[i - 1]) continue;                list.add(i);                used[i - 1] = true;                backtrack(lists, used, list);                list.remove(list.size() - 1);                used[i - 1] = false;            }        }    }    public static boolean check(List<Integer> list) {        for (int i = 1; i < list.size(); i++) {            int sum = list.get(i) + list.get(i - 1);            if (isPrime(sum)) return false;        }        return true;    }    public static boolean isPrime(int x) {        if (x == 1 || x % 2 == 0 && x != 2) return false;        for (int i = 3; i < x; i += 2) {            if (x % i == 0) return false;        }        return true;    }}Q2import java.util.Scanner;public class P2 {    public static void main(String[] args) {        Scanner scan = new Scanner(System.in);        int n = scan.nextInt(), m = scan.nextInt();        char[][] grid = new char[n][], cols = new char[m][3], rows = new char[n][3];        long ans = 0;        String you = "you";        for (int i = 0; i < n; i++) grid[i] = scan.next().toCharArray();        for (int i = 0; i < n; i++) {            for (int j = 0; j < m; j++) {                int x = you.indexOf(grid[i][j]);                if (x == -1) continue;                rows[i][x]++;                cols[j][x]++;            }        }        for (int i = 0; i < n; i++) {            for (int j = 0; j < m; j++) {                int idx = you.indexOf(grid[i][j]);                if (idx == -1) continue;                long[][] array = new long[2][2];                for (int k = 0, p = 0; k < 3; k++) {                    if (k != idx) {                        array[p][0] = rows[i][k];                        array[p][1] = cols[j][k];                        p++;                    }                }                ans += array[0][0] * array[1][1] + array[1][0] * array[0][1];            }        }        System.out.println(ans);    }}Q3import java.util.Scanner;public class P3 {    public static void main(String[] args) {        Scanner scan = new Scanner(System.in);        int t = scan.nextInt();        while (t-- > 0) {            int n = scan.nextInt(), l = scan.nextInt(), r = scan.nextInt();            int[] array = new int[n];            long sum = 0, sl = 0, br = 0;            for (int i = 0; i < n; i++) {                array[i] = scan.nextInt();                sum += array[i];                if (array[i] < l) sl += (l - array[i]);                else if (array[i] > r) br += (array[i] - r);            }            double avg = (double) sum / n;            if (avg > r || avg < l) System.out.println(-1);            else System.out.println(Math.max(sl, br));        }    }}Q4import java.util.*;public class P4 {    public static void main(String[] args) {        Scanner scan = new Scanner(System.in);        char[] cs = scan.next().toCharArray();        int cnt = 0;        long ans = 0;        for (char c : cs) {            cnt += c == '0' ? 1 : -1;            if (cnt > 0) ans += cnt;            else cnt = 0;        }        System.out.println(ans);    }}
点赞 13
评论 11
全部评论

相关推荐

这是全挂的意思吗
投递小鹏汽车等公司10个岗位
点赞 评论 收藏
分享
06-27 12:54
已编辑
门头沟学院 Java
累了,讲讲我的大学经历吧,目前在家待业。我是一个二本院校软件工程专业。最开始选专业是觉得计算机感兴趣,所以选择了他。本人学习计算机是从大二暑假结束开始的,也就是大三开始。当时每天学习,我个人认为Java以及是我生活的一部分了,就这样持续学习了一年半,来到了大四上学期末,大概是在12月中旬,我终于找的到了一家上海中厂的实习,但我发现实习生的工作很枯燥,公司分配的活也不多,大多时间也是自己在自学。就这样我秋招末才找到实习。时间来到了3月中旬,公司说我可以转正,但是转正工资只有7000,不过很稳定,不加班,双休,因为要回学校参加答辩了,同时当时也是心高气傲,认为可以找到更好的,所以放弃了转正机会,回学校准备论文。准备论文期间就也没有投递简历。然后时间来到了5月中旬,这时春招基本也结束了,然后我开始投递简历,期间只是约到了几家下场面试。工资也只有6-7k,到现在我不知道该怎么办了。已经没有当初学习的心劲了,好累呀,但是又不知道该干什么去。在家就是打游戏,boss简历投一投。每天日重一次。26秋招都说是针对26届的人,25怎么办。我好绝望。要不要参加考公、考研、央国企这些的。有没有大佬可以帮帮我。为什么感觉别人找工作都是顺其自然的事情,我感觉自己每一步都在艰难追赶。八股文背了又忘背了又忘,我每次都花很长时间去理解他,可是现在感觉八股、项目都忘完了。真的已经没有力气再去学习了。图片是我的简历,有没有大哥可以指正一下,或者说我应该走哪条路,有点不想在找工作了。
码客明:太累了就休息一下兄弟,人生不会完蛋的
如果实习可以转正,你会不...
点赞 评论 收藏
分享
06-12 17:46
门头沟学院 Java
运营你豪哥:来说重点: ​1.项目前置,时间倒序。​​ 2.​项目描述强化结果与量化效果(STAR原则里的R)。​​ ​3.个人技能精炼,明确掌握程度,突出核心。​​ ​4.增加强有力开头的个人总结部分。​​ 5.​优化教育背景(成绩排名)、合并奖项与活动。​​
听劝,我这个简历该怎么改...
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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