首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  Java

2019 字节笔试题“油豆瓶”

  •  
  •   mart1nN · 59 天前 · 5407 次点击
    这是一个创建于 59 天前的主题,其中的信息可能已经有所发展或是发生改变。
    Scanner scanner = new Scanner(System.in);
            int num = scanner.nextInt();
            int[][] arr = new int[num][num];
            for (int i = 0; i < num; i++) {
                for (int j = 0; j < num; j++) {
                    arr[i][j] = scanner.nextInt();
                }
            }
            Set<Integer> set1 = new HashSet<>();
            int count = 0;
            for (int i = 0; i < num; i++) {
                for (int j = i + 1; j < num; j++) {
                    if (arr[i][j] > 3) {
                        if (!(set1.contains(i) || set1.contains(j))) {
                            count++;
                        }
                        set1.add(i);
                        set1.add(j);
    
                    }
                }
            }
            int left = num - set1.size();
            System.out.println(count + left);
    
    

    题目自行百度把。心态有点难受

    俺刷了一整天算法题,笔试的时候第一题都没 100%通过,油豆瓶通过率 90%,尽力而自闭

    改进后的版本:不晓得对不对,合并了循环;判断条件中>3 改成了>=3 (感觉剩下的 10%就是因为这个没通过,因

    为我同学>=3 通过了)

    Scanner scanner = new Scanner(System.in);
            int num = scanner.nextInt();
            int[][] arr = new int[num][num];
            Set<Integer> set1 = new HashSet<>();
            int count = 0;
            for (int i = 0; i < num; i++) {
                for (int j = 0; j < num; j++) {
                    arr[i][j] = scanner.nextInt();
                    if (arr[i][j] >= 3) {
                        if (!(set1.contains(i) || set1.contains(j))) {
                            count++;
                        }
                        set1.add(i);
                        set1.add(j);
    
                    }
                }
            }
            int left = num - set1.size();
            System.out.println(count + left);
    
    第 1 条附言  ·  58 天前
    担心附言格式会乱,所以 csdn 上改了一遍,劳烦诸位移步

    https://blog.csdn.net/Mart1nn/article/details/100067836
    26 回复  |  直到 2019-08-27 11:16:29 +08:00
        1
    aguesuka   59 天前 via Android
    谷歌油豆瓶只能找到这个帖子
        2
    casparchen   59 天前 via iPhone
    这代码跟算法有什么关系
        3
    ccagml   59 天前 via Android
    谷歌都找不到
        4
    input2output   59 天前
        5
    neverxian   59 天前
    没搜到...
        6
    doco   59 天前
    @input2output 这个链接的内容不是和主楼一样吗?
        7
    input2output   59 天前
    @doco #6 没仔细看...... (⊙_☉)
        8
    ColaBear0001   58 天前 via iPhone
    楼主给一下题目呗,想涨涨经验
        9
    LeeSeoung   58 天前
    楼主自己搜下呢?
        10
    richzhu   58 天前
    卧槽 好难...
        11
    limitsy   58 天前
    并。。并查集?
        12
    Topson   58 天前   ♥ 4
    题目不说,我百你 m 个 b 度。我用谷歌,煞笔楼主
        13
    Topson   58 天前
    浪费时间
        14
    miniwade514   58 天前
    @Topson 你怎么了……怎么还骂人呢?
        15
    mart1nN   58 天前
    @Topson 仔细看一下 OK ?
        16
    mart1nN   58 天前
    麻烦诸位仔细看一下附言
        17
    jhdxr   58 天前
    @limitsy 好像是。。。我们学的时候叫做离线等价类 _(:з」∠)_
        18
    Duluku   58 天前 via iPhone
    散了吧……标准并查集、没啥好讨论的
        19
    Rorshach   58 天前
    裸并查集吧
        20
    zjp   58 天前 via Android
    @Livid #12 人身攻击
        21
    Livid   V2EX Moderator   58 天前
    @zjp 谢谢举报。那个账号已经被处理。
        22
    zxcslove   58 天前   ♥ 1
    油豆瓶...........人才,补充纠正一下能少浪费多少人时间
        23
    rizon   58 天前
    豆油瓶。。。。简直一脸懵逼。。。
    简单快速看了下没明白入参和出参是啥。。

    不过我很好奇这个名词,不知道有人能给解释下不。。。。

    “ 抖音中每两个用户之间互动超过 3 次即互为豆油瓶”
    谁能给解释一下,为什么把这种情况起了一个豆油瓶这种名字?想了半天没想明白里面的玄机和关系

    “抖友瓶”??为啥要叫瓶?为啥不直白的就叫互动关系。。一度互动关系、二度互动关系。
    就是个图嘛。。。
        24
    rizon   58 天前
    @rizon #23 好吧大概明白了,抖友谐音 豆油,把豆油装到一起的一般就是瓶子。。所以就索性叫 豆油瓶了吧。。。
    真。。。。嗯。。没想出啥形容的词来。。
        25
    mart1nN   58 天前
    @rizon hhh 我昨晚看题目看了 10 分钟,没反应过来怎么起这么个名字
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   4258 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 542ms · UTC 01:33 · PVG 09:33 · LAX 18:33 · JFK 21:33
    ♥ Do have faith in what you're doing.