내가근데 너무 복잡하게 생각하는건지 모르겠는데
근우와 명우 둘다 서로 최선의 전략으로 임한다
"최선의 전략" 이라는게 참..
별에별생각을 다했었음
그러다결국..
1 2 5 2 를 예를들어서
무조건 당장눈앞에 2를가져가는것보다
지금은1을가져가고 상대방이 5를못고르게하고 내가 5를가질상황을만든다
이걸 풀어서 쓰자면
좌선택 우선택으로 생각
좌선택시 상대방이 고를수있는 수중 큰걸 A
우선택시 상대방이 고를수있는 수중 큰걸 B
A,B비교해서 더 적은쪽으로 선택
비교불가시(A=B) 좌선택값과 우선택값비교 큰것선택
좌선택값 = 우선택값 일시 좌선택
=======================================
1 3 6 9 8 을 예로들자
내턴
1을선택시 상대방은 3,8가능
8을선택시 상대방은 1,9가능
따라서 1을선택함 (sum = 1)
상대턴
3 6 9 8 에서
3을선택시 상대방(나)는 6,8가능
8을선택시 상대방(나)는 3,9가능
따라서 3을선택
내턴
6 9 8 에서
6을 선택시 상대방은 9,8가능
8을 선택시 상대방은 6,9가능
6<8이므로 8을선택(sum = 1+8)
상대턴
6 9 에서
6<9이므로 9 선택
내턴
6선택 (sum=1+8+6)
sum = 15
=====================================
이렇게 가정하고 짰더니 예제로나온 케이스나 단순히 생각해보는 수준선에선 풀림
내가 코드를 잘못짯을수도있긴함. 개더러움(재귀안쓰고 if 랑 for떡칠함)
근데 일단은 예제나 내가 생각한것들 집어넣으면 맞게나옴
ㅋㅋ
멍청하면 이렇게 손발이 고생합니다
네가 푼 방법을
그리디 메소드라고 하는데
그렇게 해선 답이 안나오는 문제얌
테스트 케이스중에 분명 엄청더러운거있음... 여러번당해보면 의심부터하게됨
아... 아까 티나가 그리디 그리디 하던데 이게 그리디구나..
저런식으로 안나오는 이유는뭐임? 어디서 어긋장남?
저로직에서 다음번은 맞지만 다음다음번에서는 명우년이 더가져갈수도있는 케이스가 나옴 지금 바둑둘때 한수만보고두는거랑 두세수 보고두는거랑 그런차이라고할까 근데 나도좆밥이라모름
그럴꺼같긴했는데.. 너무복잡하게생각하는거같아서 예제랑 몇개 때려보고 맞길래 맞겠구나했는데... 그니까 세수 네수를 바라보면 그게또 손해보는 선택이 될수도 있다는거지? 생각자체를잘못했네
멍청인증
풀이를 잘못봤는데 대충 재귀로 내가 이수를뒀을때 끝까지 내려갔을때 뭐가나올지 계속 결정해서 동적프로그래밍으로 풀어야할것같긴한데 나도 좆밥이라 뭐라못함 퇴갤이요