kjy5947   5년 전


난쟁이 문제인데 ㅠ.ㅠ!!!!!!!!

일단 제가 풀으려고 생각한 방법은

1. 일단 9명의 난쟁이의 키를 입력받고 그 입력받은 배열을 보여줍니다.

2. 그 배열의 값 전부를 합한값을 sum에 저장하고 전부합한 sum에다가 "-100"을 해서 제거해야할 숫자 2개값의 합이 되어야하는 값을 구합니다.

3. 반복문을 이용해서 일단 먼저 첫번째 제거할 값을 선정하고 그 선정된값은 0으로 바꾼후 오름정렬을 해줍니다.

4. 2번째 제거해야할 값도 선정해서 그 값을 0으로 바꾸고 오름 정렬을 해줍니다.

5. 마지막으로 7난장이의 키가 100이 되는 값만 뽑기 위해 제일 작은값으로 대체된 0을 가지는 2개값을 제외하고 나머지 인덱스 7개만 보여주게 출력하여줍니다.

==>> 이런식으로 구현하려는데 자꾸 제가 원하는 결과가 안나오네요 ㅠ.ㅠ!!! 중간에 인덱스 값 걸러내는 부분에서 제외할값은 0으로 만들고 하는 부분에서  문제가있는거같은데 어떤 부분을 고쳐야 할까요 ㅠ.ㅠ!!!!!!!!!!!?

hyunynim   5년 전

첫번째와 두번째를 어떤식으로 걸러내는지 달아주셨으면 더욱 좋았을것 같아요!

인덱스를 하나씩 찾는 방법보다 총 9개의 숫자가 주어지고 이중 7개의 합이 100이되는 숫자 7개를 찾아야 하므로 완전 탐색을 이용해도 

9C7 = 36가지만 해보면 되기 때문에 이를 이용해서 풀어보시는 것은 어떨까요!?

kjy5947   5년 전

아아~~ 9개의 값을 입력 받으면 배열순서대로 자리가 들어갈텐데 31번줄에 arr[i]=0 으로 바꾸는게 하나 그냥 임의로 선정해서 0으로 만들고

오름정렬 해서 제일 작은값0이 인덱스 제일 낮은곳으로 갈테니깐.......... 제~~~~~~일 마지막에 출력으로 보여줄때 인덱스 2개 제외한 인덱스번호 2번부터 8번까지만 보여주려고....... 시도했었어용.........

hyunynim님께서 알려주신 방법으로 한번 해봐야겠네요~~ 정말 감사감사합니답


댓글을 작성하려면 로그인해야 합니다.