D는 자기가 d개 갖고있는걸 알고(d는 정확하게 인지하고있는 수 미지수아님여)
A의 사과수는 1개 이상 , B와 C의 사과수는 각각 2개이상씩
A,B,C가 먹은 사과수를 a,b,c라 했을 때
D는 a+b+c=11-d를 아고있죠 즉 a+b+c가 정확히 몇인지 안다는건데
위 대화를 듣고 각자가 섭취한 사과수를 정확히 알았다고 하니
d=6이여만 (a,b,c)의 가능한 경우의 수가 1가지임을 알 수 있습니다
한 사람이 솔까 6개 다 먹는건 무리인 듯.. 비현실적인 답..
11개의 사과를 '나누어' 먹었으니 일단 2x4=8
한사람이 2개이상 먹었다는 가정하에..
위의 이론은 대입해서 A 2개, B 3개, C 3개
D 3개 (2개 이상씩 먹었다는 가정하입니다.)
A가 질문을 물어본 시점이 사과를 다 먹은 시점일 확률이 높으므로 B, C, D는 먹고있을 상황이 높음..
A가 빨리 하나 덜 먹었기 때문에 사과를 빨리 먹은 관계로
B에게 다 먹은 후 질문을 했을 가능성이 높음..
그리고 저렇게 따졌을 때 서로 먹은 양이 비례가 됨.
아니면 말음...ㅋ
DISC X(woogh2582)//
만일 1개만 가지고있다면 "너 나보다 많이머거씀?" 하면 "아니" 라고 하겠지요. 모두가 서로 1개 이상씩 먹은건 알고있는 상태에서 1개는 먹을수있는 최소의 사과갯수니까 최솟값이 다른값보다 '많을수는'없는거지여
앜 내가 여기서 뭐하는거 짘ㅋㅋㅋ
B는 자신이 먹은 수 이외에는 모르고
A또한 자신이 먹은 수 이외에는 모르기 때문에
B에게 '나보다 많이 먹었어?'라고 질문합니다.
그런데, 제가 모르겠다는 이유가
A가'나 X개 먹었는데, 나보다 많이 먹었어?'라는 질문이 아닌데도
B와C의 갯수를 알 게된 과정을 모르겠네요;
DISC X(woogh2582)//
만약 1개를 가지고 있는 넘한테
1개를 먹은 넘이 "나보다 많이 먹었어?"라고 한다면 "아니"라고 답하겠지요...
그뜻은 1개를 가지고 있는 넘은 1개 이상의 어떠한 수의 사과를 먹은 넘이 자기보다 많이 먹었냐고 물을경우 무조건 "아니" 라고 말할것이라는겁니당...
근대 B와 C는 모른다고 말했으니 2개이상 먹었다는 사실을 알 수 있져.
뭐 A,B,C가 전부다 컴퓨터처럼 머리가 째깍째깍 돌아가는 넘들이 아니라면 할말없지만 문제니까 그런 요소는 제외시켜야져ㅋ
풀고 보니 기본 논리는 Renia님과 동일 합니다. 결과적으로 ABC가 먹은 갯수의 범주는 2보다 크거나 같고 4보다 작거나 같다 로 범주를 줄이고 이때 d가 모두의 값을 알수 있는 경우는 ABC가 최소 값을 가지도록 자신이 나머지를 다 먹는 경우 뿐이라는겁니다. 따라서 5개를먹었다는것이 되며 Renia님께서는 A의 범주를 1이상으로 보셨기 때문에 D가 6개가 나온것입니다.
1. A < B 란 질문에 비가 몰라라고 할수있는 조건은 비는 1개 초과로 먹었다이다. 1개라면 비가 에이도 1개먹은사실을 알고있는데, 몰라라고 할수 없기 때문이다. 1개먹은 비라면 1개이상을 먹을가능성이 있을 에이의 질문에 아니라고하는게 맞다.
고로 B의 몰라 대답은 2개이상을 먹었을때 나올수있는 대답이다. (1의 결과 B>=2 )
2. A>=1 , B>=2 상황에서 씨에게 비 < 씨 이냐고 물어본다.
에이와 비의 선행질문에 의해 2=<비<씨 의 대답이 몰라라고 나와야할려면 어떻게 되어야하나?
씨가 2개 이하를 먹은 상태에서 비의 질문에 대한 답은 아니가 맞다. 1번의 질문에 의해 비는 2개이상먹은것이기때문이다.
2개 이상 먹은 비에게서 씨의 모르겠어 라는 답은 씨는 2개 초과를 먹은 상태여야만 가능하다.
고로 C>=3 이상의 사과를 먹은샘이된다.
자 이 결과로 디 녀석이 모두가 먹은 사과의 갯수를 맞출수 있어야한다. 에이의 최소값 1 비의 최소값 2 씨의 최소값이 3 이상인 상태에서 디가 모두가 먹은 사과의 갯수를 정확히 맞추는 법은
모두가 최소값의 사과를 먹었을 때를 가정하고 디가 5개를 먹은 상태라면 디는 모두가 먹은 사과의 갯수를 알수있다.
Renia/뭐 그건 생각하기 나름이긴 합니다만 저는 "많이 먹었어?" 라는 질문을 통해서 최대값을 제한하는 기법을 사용했기 때문에 동일한 논리를 최소값에도 적용한것 뿐입니다. 무의미하면 질문의 의미가 없다 라는 조건이 발동되는 것을 최소 최대 모두 적용한것 뿐이죠. 어느쪽도 틀리다 말하기는 힘들것 같습니다만 학교 시험문제로 나왔다면 제쪽이 정답일 확율이 더 높을것 같네요 ㅋㅋㅋㅋㅋㅋ
1. B는 1개를 먹지 않았다.
-> 사과를 1개 먹었다면 A가 B에게 물었을 때 '아니'라는 대답을 해야만 합니다. 적어도 A보다 많이 먹지는 않았기 때문이죠.
2. B는 5개 이상을 먹지 않았다.
-> B가 사과를 5개를 먹고, A가 남은 사과를 최대한 많이 먹는다해도 4개까지입니다. 즉, B가 만약 사과를 5개 이상 먹었다면 A가 질문했을 때 '응'이라는 대답을 했을 것입니다.
3. C는 1개나 2개를 먹지 않았다.
-> C는 앞선 대화를 들었기 때문에 B가 먹은 사과 개수가 2~4개라는 사실을 알고 있습니다. 1번과 마찬가지의 이유로 C는 '몰라'라는 대답을 했기에 적어도 3개 이상을 먹었을 것입니다.
4. C는 5개 이상을 먹지 않았다.
-> 이유는 2번과 동일합니다.
===> B가 먹은 사과 개수는 2~4개, C는 3~4개입니다. 따라서 B, C가 먹은 사과 개수의 합은 5~8개이며, A, D가 먹은 사과 개수 합은 3~6개 입니다.
이것으로는 답이 여러개 나올 수 있지만 마지막으로 가장 중요한 단서가 하나 남아있습니다. 'D는 각자 몇 개의 사과를 먹었는지 정확히 알 수 있었다'는 것이지요. 그 경우는 단 한가지, D가 5개의 사과를 먹은 경우입니다.
만약 D가 4개의 사과를 먹었다고 한다면 (A, B, C)가 (2, 2, 3)개를 먹었는지, (1, 3, 3)개를 먹었는지, (1, 2, 4)개를 먹었는지 알 길이 없습니다. D가 3개 이하를 먹은 경우에는 더더욱 알 수가 없겠지요. D는 5개를 먹었기에 정확히 누가 몇 개를 먹었는지 알 수 있었을 것입니다.
꽃간지헤어님의 논리가 더 타당해보이네요..자의적인 해석이 가능한 질문의 의미를 찾는 제 방식 보다는 꽃간지헤어님쪽 논리가 더 수학적인거 같네요. 학교 시험이였다면 어찌돼든 답은 동일합니다만...
A라는 녀석에게 쓸데 없는 질문은 하지말라고 충고 하고 싶네요...ㅋㅋㅋㅋㅋ(코딩할때 쓸데 없는 조건문은 넣지 않고 선행 조건에서 배제 하는 방식을 많이 써서 사고도 그런식으로 한것 같네요ㅋㅋㅋ)