Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[9월 30일] 우선순위 큐 #7

Open
wants to merge 1 commit into
base: main
Choose a base branch
from
Open

[9월 30일] 우선순위 큐 #7

wants to merge 1 commit into from

Conversation

uommou
Copy link
Collaborator

@uommou uommou commented Oct 5, 2022

내용 & 질문

제출합니다!

<기존 제출>

23757, 2075

<추가 제출>

Copy link

@dbswn dbswn left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 23757 코드 리뷰 완료
안녕하세요 채원님 !! 😊코드 구경 잘 하고 갑니다!!👍👍

간단한 코멘트 달았으니, 확인 부탁 드립니다 !수정하신 부분 있으시면 리뷰어로 불러주셔도 좋습니다! 수고 많으셨습니다.감사합니다. 🤗🤗

Comment on lines +17 to +19
else {
return 0;
}
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P3
함수를 써서 좋은 점 중 하나는 값을 바로 return할 수 있다는 것인데요! 현재 else문으로 return을 빼주셨는데 조건을 살짝 변경하면 if 에서 바로 return 해줄 수 있을 것 같네요! 이렇게 되면 가독성도 좋아지고 함수 내에서 return 이후의 코드는 실행되지 않을 테니 else문을 쓰지 않아도 되겠네요!

int c;

for (int i = 0; i < m; i++) {
cin >> c;
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2
입력과 출력을 함수에서 관리하게 될 경우, 함수의 용도가 굉장히 불명확해집니다. 특히 함수화를 하는 이유는 특정 코드를 계속 반복해서 쓸 수 있도록 (재사용성을 높임) 하기 위함인데, 입력과 출력을 같이 해버리면 해당 함수를 다른 곳에서 또 쓰기도 애매해지죠! 따라서 입력과 출력은 메인에서만 하도록 권장드리고 있습니다!! ✨✨
따라서 아이들이 원하는 선물 개수를 main에서 vector로 입력받아 인자로 같이 넘겨주거나 아예 main에서 큐를 사용하는 방법도 있습니다~! 후자의 방법은 샘플코드에서 확인해주세요~!

Copy link

@flowersayo flowersayo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

2075번 코드리뷰 완료

저희 샘플코드랑 풀이 방향성이 거의 같아서
더이상 피드백 드릴 점이 없었네요🥺

우선순위큐 과제도 정말 수고하셨습니다❤️‍🔥

Comment on lines 8 to 16
priority_queue<int, vector<int>, greater<int>> pq; // ��� �� top�� ��� �켱���ť
for (int i = 0; i < n*n; i++) {
int num;
cin >> num;
pq.push(num);
// ũ�⸦ n��� ����ϸ� top���� n��°�� ū �� ����Ѵ�.
if (pq.size() > n) {
pq.pop();
}

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

맞아요! 메모리 제한이 있기때문에 들어오는 수를 다 저장해서 n 번째 큰 수를 계산하려고 하면 메모리초과가 날거에요. 따라서 최소힙을 사용해서 상위 n 개의 수만 저장시키면서 heap[0] 를 n 번째 큰수로 유지시켜주면 되는 문제였어요! 훌륭하게 잘 해결해주셨네요🥰

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants