科大讯飞0723笔试

25单选题+3编程题

单选对于我来说还是好难啊😥😥

1、求个汉宁窗映射的值,具体题目记不清了,大概就直接按照题目给的公式计算就行了。
这个题目有个坑,给的Pi=3.1516927不能直接用数字,我直接用数字计算就只有70%,因为默认是double类型的,要用个变量Pi存成float类型计算。

2、求给定点中能组成直角三角形的个数。数据量不是很大,而且提示也说可以用勾股定理,所以直接暴力计算就行。感觉用向量点积应该计算更少点。

3、5个球队一个小组,踢10场比赛。赢比赛得3分,输比赛得0分,平局双方各得1分。求最终5支球队得分情况的总数(得分排列需要按照降序去重),以及输入一个序列判断是不是可能的最终得分情况。
笔试的时候没写出来,只想到要用回溯,笔试完了才把细节和去重部分补全了。贴一下:
public class Main{
    
    static int[][] games = {{0, 1}, {0, 2}, {0, 3}, {0, 4}, {1, 2}, {1, 3}, {1, 4}, {2, 3}, {2, 4}, {3, 4}};
    static Set<Scores> set = new HashSet<>();
    static int[][] score = {{3, 0}, {1, 1}, {0, 3}};  // main里用dfs(0, new int[5])调用       
       private void dfs(int idx, int[] cur) {
        if (idx == 10) {
            int[] copy = Arrays.copyOfRange(cur, 0, 5);
            Arrays.sort(copy);
            swap(copy, 0, 4);
            swap(copy, 1, 3);
            set.add(new Scores(copy[0], copy[1], copy[2], copy[3], copy[4]));
            return;
        }
        for (int j = 0; j < 3; j++) {
            cur[games[idx][0]] += score[j][0];
            cur[games[idx][1]] += score[j][1];
            dfs(idx + 1, cur);
            cur[games[idx][0]] -= score[j][0];
            cur[games[idx][1]] -= score[j][1];
        }
    }

    private void swap(int[] cur, int i, int j) {
        int temp = cur[j];
        cur[j] = cur[i];
        cur[i] = temp;
    }
}

class Scores {
    int a, b, c, d, e;

    public Scores(int a, int b, int c, int d, int e) {
        this.a = a;
        this.b = b;
        this.c = c;
        this.d = d;
        this.e = e;
    } 
        @Override 
        public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        Scores scores = (Scores) o;
        return a == scores.a && b == scores.b && c == scores.c && d == scores.d && e == scores.e;
    } 
        @Override 
        public int hashCode() {
        return Objects.hash(a, b, c, d, e);
    }
}
    




#科大讯飞#
全部评论
楼主投的是研发吗
点赞 回复 分享
发布于 2022-08-05 19:35
请问编程题可以先用IDEA写再复制过去么
点赞 回复 分享
发布于 2022-08-04 19:53
为什么比十场是这样比?不能1,0 0,1 1,0 0,1这样比下去吗
点赞 回复 分享
发布于 2022-08-02 22:27
楼主收到面试了吗
点赞 回复 分享
发布于 2022-07-30 13:42
我还是不理解,第二题不用判断三点共线吗 😔
点赞 回复 分享
发布于 2022-07-24 21:08
等一个js版本的算法题答案!!
点赞 回复 分享
发布于 2022-07-24 17:20
大佬第三题啥思路能具体讲下吗
点赞 回复 分享
发布于 2022-07-24 11:04
大佬tql
点赞 回复 分享
发布于 2022-07-24 00:11

相关推荐

认真搞学习:28小登的建议,投算法岗不要写什么物理竞赛,互联网+,多写点项目,用什么算法做了什么。还有本科算法是不可能的开发你这个也没有项目啊
点赞 评论 收藏
分享
评论
11
23
分享

创作者周榜

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