1-A 일곱난쟁이 문제 질문있습니다!!
372
작성한 질문수 8
안녕하세요. 큰돌 선생님!!
강의 잘듣고 있는 학생입니다! 다름이 아니라, 선생님께서 알려주신 내용들을 바탕으로 저의 식대로 한번 짜보았는데요.
아래 코드를 백준에서 돌리면 결과는 잘 나오는데 틀렸다고 나오더라구요. 어디서 틀린건지 도저히 모르겠어서 질문드립니다. 코드는 선생님이 알려주신 내용 바탕으로 짠거라서 바로 아실꺼라고 생각합니다!!
답변 부탁드리겠습니다. 감사합니다.
/*
문제
왕비를 피해 일곱 난쟁이들과 함께 평화롭게 생활하고 있던 백설공주에게 위기가 찾아왔다. 일과를 마치고 돌아온 난쟁이가 일곱 명이 아닌 아홉 명이었던 것이다.
아홉 명의 난쟁이는 모두 자신이 "백설 공주와 일곱 난쟁이"의 주인공이라고 주장했다. 뛰어난 수학적 직관력을 가지고 있던 백설공주는, 다행스럽게도 일곱 난쟁이의 키의 합이 100이 됨을 기억해 냈다.
아홉 난쟁이의 키가 주어졌을 때, 백설공주를 도와 일곱 난쟁이를 찾는 프로그램을 작성하시오.
입력
아홉 개의 줄에 걸쳐 난쟁이들의 키가 주어진다. 주어지는 키는 100을 넘지 않는 자연수이며, 아홉 난쟁이의 키는 모두 다르며, 가능한 정답이 여러 가지인 경우에는 아무거나 출력한다.
출력
일곱 난쟁이의 키를 오름차순으로 출력한다. 일곱 난쟁이를 찾을 수 없는 경우는 없다.
*/
#include<bits/stdc++.h>
using namespace std;
vector<int> height;
int sum_height = 0;
const int total_height = 100; //난쟁이수, 일곱난쟁이키의 합
void printV(vector<int> &v)
{
vector<int> ::iterator iter;
for(iter = v.begin(); iter != v.end(); iter++)
{
cout << *iter << "\n";
}
}
int main()
{
for(int i = 0; i < 9; i++) //난쟁이수는 9명
{
int k;
cin >> k;
sum_height += k;
height.push_back(k);
}
//cout << sum_height << endl;
sort(height.begin(), height.end(), less<int>());
//printV(height);
for(int i = 0; i < 9; i++) //난쟁이수는 9명
{
for (int j = 0; j < i; j++)
{
if(height[i]+ height[j] == sum_height - total_height)
{
// cout << i << " "<< j<< " " << sum_height - total_height << endl;
// cout << height[i] << " " << height[j] << endl;
height.erase(height.begin() + i);
height.erase(height.begin() + j);
break;
}
}
}
printV(height);
return 0;
}
답변 1
0
안녕하세요 ㅎㅎ
이코드요. break문은 가장 가까운 반복문을 빠져나가는 키워드입니다.
즉, for문 두개를 빠져나가게끔 로직을 짜야겠죠?
height.erase(height.begin() + j);
break;
flag를 이용해서 저 상황이라면 flag = 0 >> 1로 만들고
height.erase(height.begin() + j);
break;
}
if(flag)break;이런식으로 하시면 될거에요.
그리고 담부터는...
0주차 질문하는 법 참고해서 질문 부탁드려요.ㅎㅎ
감사합니다.
5-B
0
17
2
4 - A
0
33
2
코딩살구클럽 입장이 안됩니다
0
82
2
4-F 경우의 수 질문입니다.
0
35
2
코딩살구클럽 가입이 안됩니다.
0
85
2
살구 클럽에 대한 질문있습ㄴ디ㅏ
0
63
1
교안 158페이지 문의드립니다
0
47
2
코딩살구클럽 관련 건의사항
0
119
1
코살에 19942 다이어트 문제에 N의 범위가 빠져있슴니다
0
45
1
진행 방법 질문드립니다!
0
83
2
2-I) 왜 이 문제가 그래프이론 카테고리에 있는지 잘 모르겠습니다.
0
64
2
2주차 개념#12 트리 순회
0
33
2
백준사이트가 종료된다고 합니다.
0
318
2
백준 서비스 종료
9
953
1
sk 하이닉스 코테 대비
0
388
2
3-G 최댓값 질문
0
54
1
모듈러 연산 값이 10이 아닌 경우도 있지 않나요?
0
84
2
3-I 코드 질문드립니다.
0
66
2
3-N 질문 있습니다.
0
68
2
학습방법
0
105
2
4-H 질문 있습니다 (코드 리뷰)
0
69
2
코딩테스트 어디까지 준비해야 하는지 질문이 있습니다.
0
186
2
2-O 반례가 무엇일지 어떤 부분이 틀렸는지 잘 모르겠습니다.
0
74
2
2주차 개념 #4-2. 인접행렬 질문있습니다.
0
66
2





