解决这一编程挑战的好方法是什么?

时间:2016-02-29 13:24:49

标签: algorithm data-structures

在一个编程竞赛中,出现了这个问题。

数据库包含一个包含两列的表 首先是会员的身份,
第二个可以

  • 0(如果他没有任何副坐标),
  • id(如果只有一个子坐标),
  • id的总和(如果他有两个副坐标)

//仅限Max Two助手。

我们需要找到帮派的负责人

示例输入:

第一行表示&#39; n&#39; [记录数量3<n<100]
接下来的四个是实际记录

4 
1 7
2 1
3 0
4 0

这里3,4在第二列中有0,这意味着他们没有任何副坐标。

1在第二列中有7个,它不是任何成员的id,所以它可以是两个id的总和[所以3,4是7的子坐标]

2有1作为子坐标

所以2是该团伙的负责人。

输出:

2

我无法解决问题 任何人都可以帮助我吗?

如果不是一个正确的地方,问这类问题意味着 可以建议我一些网站,我可以发布这些类型的问题吗?

1 个答案:

答案 0 :(得分:3)

我会在这里给你一个提示(这几乎是一个解决方案):

第二列中所有数字的总和是什么?

答案(剧透警报):

  

该团伙头部的id(如果存在)是:1 + 2 + ... + n - (the sum of all the numbers in the second column)。注意,上述数字实际上给出了所有顶级成员(即没有任何子句点的成员)的id的总和。因此,正确性依赖于假设该团伙中存在一个独特的头部。