2013-10-10 4 views
-3

전화 인터뷰를 가졌습니다. 그리고 질문 중 하나는면접 Q : 자릿수 합계 3 시간 자체가

숫자가 있으며 그 숫자의 합계는 3 번이며 숫자는 과 같으며 하나만 있습니다. 이 번호는 어느 것입니까?

이 질문에 접근하는 방법을 알지 못했습니다. 그리고 힌트를 요구했다. 그들은 아무 것도주지 않을 것이고 나는 그 숫자가 될 수있는 것으로 잃어 버렸습니다.

제한된 양의 정보를 갖고있는 저를 좋아하는 사람이 주어진 정보로이 질문에 접근합니다 (숫자에 얼마나 많은 자릿수가 있는지 말해주지 않는다고 가정).

+0

추측. 실험. 번호에 정확히 2 자리가 있다고 말하면 어떻게할까요? 번호에 정확히 3 자리가 있다고 말하면 어떻게할까요? 가설을 세울 수 있습니까? 그들을 테스트 할 수 있습니까? 그들을 증명할 수 있습니까? – AakashM

+5

이 질문은 코딩에 관한 것이 아니기 때문에 주제와 관련이없는 것처럼 보입니다. – AakashM

+3

숫자는 0입니다. – RBarryYoung

답변

2

수가 Y 배 + 후 배 + Y = 3 (X + Y) 인 경우 -> X/Y = 2/7 그래서 가장 확실한 해결책은, X = 2, Y 7 =이다 .. .hence 27 대답은

+0

y = 0 인 경우 0으로 나눈 값입니다. – sara

+0

예, @sara, 이제 우리는 y입니다! = 0 – Ingo

+0

내 대답 5 분 후에 확실하게 두 자리로 표시되며 내 대답이 이미 잘 설명되어있는 것이 쉽습니다. 대답은 27이라고 가정합니다. @ user1655072가이 대답을 어떻게 받아들이는지 모르겠습니다! –

1

글쎄, 나는이 같은 전화 인터뷰에서 현장 질문이 매우 어려울 것이라고 생각한다. 그러나 그것은 또한 당신이 질문을 해결하는 데 도움이 될 것입니다. 3의 배수 인 작은 숫자를 생각해보십시오. 12, 1 + 2 = 3 3X3 = 9 맞지 않으면, 27, 2 + 7 = 9, 9 * 3 = 27 빙고! 우리는 정답을 찾을 수있는만큼 생각 프로세스를 찾고 있습니다.

1

이 숫자는 n> 2 자릿수 인 경우 최대 자릿수가 n * 9이고 n * 9 * 3 < 10^(n-1)이므로 2 자릿수를 초과 할 수 없습니다. 따라서 두 자리 숫자 중에서 검색하면됩니다 (1 자리 숫자는 단순히 가능하지 않습니다). 또한 3으로 나눌 수 있어야합니다. 검색은 30 개 미만의 숫자로 제한됩니다. 또한 그것은 9로 나눌 수 있어야합니다 (왜?), 그래서 간단히 말하면 27 일 (18이 아니고 27은 정답입니다. 하나의 숫자 만 있다는 것을 알면 이것이 해결책입니다).

+0

한 자리 수 : 0 – Ingo

+0

@Ingo, 숫자에 대해 이야기 할 때 대개 자연수에 대해 이야기합니다.(그렇지 않으면 질문이 잘못되었습니다). –

+0

물론, Peano와 Frege를 믿는다면, 0은 최초의 자연수입니다. – Ingo

0

파이썬 브 루트 포스 (python brute force) 솔루션, 가장 좋지는 않지만 뭔가 있습니다.

def sum_digits(n): 
    s = 0 
    while n: 
     s += n % 10 
     n /= 10 
    return s 


for i in range(1, 1000): 
    if i == sum_digits(i) * 3: 
     print i