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

[스텍, 큐, 덱] 8월 26일 #2

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

[스텍, 큐, 덱] 8월 26일 #2

wants to merge 1 commit into from

Conversation

seona-moon
Copy link
Collaborator

문서영
2017012

1158/4949/10757

Copy link
Member

@Goldchae Goldchae left a comment

Choose a reason for hiding this comment

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

p2. 한번 함수형 프로그래밍으로 기능들을 분리해 보세요! 수고하셨습니다!


using namespace std;

int main()
Copy link
Member

Choose a reason for hiding this comment

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

p2. main함수에서는 입출력만 넣어주시는 편이 좋습니다! 기능을 분리하여 함수로 만들어보세요!

}
}
cout << '>';
return 0;
Copy link
Member

Choose a reason for hiding this comment

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

주석과 로직 좋습니다!


using namespace std;

int main()
Copy link
Member

Choose a reason for hiding this comment

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

p2. 마찬가지로 함수 분리해주세요!

Copy link

@chae-jpg chae-jpg left a comment

Choose a reason for hiding this comment

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

[스택, 큐, 덱 구현 코드 리뷰 완료]

10757(P3)

안녕하세요 서영님! 코드 리뷰 완료되었습니다👍
주석 남겨주신 것도 좋았고, 문제도 깔끔하게 잘 풀어주셨어요!
간단한 코멘트 몇 개 남겼습니다~
궁금한 점이 있으시다면 리뷰어를 호출해주세요~

Comment on lines +67 to +76
if (sum >= 10)
{
carry = true;
result.push_front(sum - 10);
}
else
{
carry = false;
result.push_front(sum);
}
Copy link

Choose a reason for hiding this comment

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

사소하지만,
carry = sum / 10;
result.push_back(sum % 10);
이렇게 하면 조금 더 간결하게 표현할 수 있어요~


// 문자열로 입력받기
string a, b;
deque<char> A, B;
Copy link

Choose a reason for hiding this comment

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

P3
알튜비튜에서는 변수 이름으로 알파벳 소문자를 사용하고 있습니다! a_deque와 같은 이름으로 변경해 보는 것은 어떨까요?

Comment on lines +20 to +27
for (int i = 0; i < a.size(); i++)
{
A.push_back(a[i]);
}
for (int i = 0; i < b.size(); i++)
{
B.push_back(b[i]);
}
Copy link

Choose a reason for hiding this comment

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

문자열을 덱 2개에 각각 집어넣은 다음에 덱에서 값을 꺼내 연산하는 식으로 문제를 풀어주셨네요! 덱의 성질을 잘 이용해주셨습니다👍👍 단, 이러면 덱에 값을 푸시하고 팝하는 과정에서 연산이 많이 일어나기 때문에, 효율성 면에서는 성능이 조금 떨어질 수 있다는 점 알아주세요!

Comment on lines +42 to +77
for (int i = 0; i < size; i++)
{ // 뒷자리부터 차례대로 계산
if (A.empty())
{
m = 0;
}
else
{
m = A.back() - '0'; // char to int를 위해 '0'을 뺀다
A.pop_back();
}
if (B.empty())
{
n = 0;
}
else
{
n = B.back() - '0';
B.pop_back();
}
int sum = m + n;
if (carry)
{ // 이전 계산에서 carry가 있다면?
sum++;
}
if (sum >= 10)
{
carry = true;
result.push_front(sum - 10);
}
else
{
carry = false;
result.push_front(sum);
}
}
Copy link

Choose a reason for hiding this comment

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

덧셈과 덱의 성질을 이용해서 덧셈을 잘 구현해주셨어요!

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