📜  Atlassian 面试经历(校外)

📅  最后修改于: 2022-05-13 01:58:15.042000             🧑  作者: Mango

Atlassian 面试经历(校外)

今年我参加了校外的 Atlassian Girlscript。正如您所猜到的,它的第一轮是在 HackerRank 上进行在线编码。总共有 3 个问题和 90 分钟提交测试。

在线编码回合:

  1. 阵列缩减

    有一个由n 个整数组成的数组,称为nums 。通过执行移动操作,可以将数组减少一个元素。

    每个动作都有:

    1. 选择两个不同的元素 nums[i] 和 nums[j](i 和 j 不相等)
    2. 删除两个元素
    3. 将两个选定元素的总和添加到数组的末尾

    每个移动都有一个与之相关的成本——移动期间从数组中删除的 2 个元素的总和。因此,计算将数组减少为一个元素的最小总成本。

    输入:包含 n 个元素的 nums 数组

    输出:显示最小成本的整数值

    Input: [4, 6, 8]
    Output: 18
    
    There are two possibilities;
    1. Pick the first two elements i.e. 4, 6
       Remove them from the list. The new list will be [8]
       Add the sum 4+6=10 to the end of the list [8, 10]
       Again, pick two elements. Now only remaining elements are 8, 10
       Remove them from the list. []
       Add the sum 8+10=18 to the end of the list [18].
       18 is the output since one element is the terminating condition.
    2. One can also pick 4, 8
       Remove them from the list. [6]
       Add the sum to last [6, 12]
       Again, pick two elements. 6, 12
       Remove them from the list []
       Add the sum 6+12=18 to the end of the list [18]. 
    
    Input: [4, 4, 4, 4, 6]
    Output: 52
    
    Input: [1, 2, 3, 4]
    Output: 19
  2. 有效的 BST 排列

    给定一个整数,确定可以由编号从 1 到该整数的节点创建的有效二叉搜索树的数量。

    输入:表示节点的整数

    输出:BST 总数

    Input: 2
    Output: 2
    
    There will be two possible BST with 2 nodes.
    2 (root)                            1(root)
    1 (right child of the root)            2(left child of the root)
    
    Input: 1
    Output: 1
    
    Input: 3
    Output: 5
  3. 强关联群体

    一群软件工程师想要建立一个紧密联系的小组,这样每个人都认识小组内的每一个人。

    如果网络有n个人,并且有m对关系连接他们,则求最大强连接组的最小规模。将人视为图节点,将他们的关系视为边。

    输入:整数 NumNodes(组内人数),整数 NumEdges(节点之间的关系)

    输出:整数,表示必须形成强连接组的最小人数

    Input: 5, 4
    Outpu: 3
    
    Input: 7, 6
    Output: 4

快乐编码!