| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | ||||
| 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 11 | 12 | 13 | 14 | 15 | 16 | 17 |
| 18 | 19 | 20 | 21 | 22 | 23 | 24 |
| 25 | 26 | 27 | 28 | 29 | 30 | 31 |
- c#프로그래머스기초문법
- 백준코테
- c#코딩기초트레이닝
- 유니티3dui
- 백준 c++ 공부
- 오블완
- 백준
- unity3d
- unity게임
- unity3d게임만들기
- 백준 구현문제
- 티스토리챌린지
- 유니티게임만들기
- c#기초문법
- 백준 C++
- 바킹독
- 백준코딩테스트
- 유니티서바이벌게임만들기
- c#기본문법
- c#문제
- 유니티
- c#코테
- 바킹독알고리즘
- C#문법
- c# c#프로그래머스
- unity3dservival
- 유니티공부
- Unity
- unity게임만들기
- c#
- Today
- Total
나 개발자 진짜 되냐?
백준 C++ 7568번 덩치 ( 브루트포스, vector<pair> ) 본문

1월 첫째 주군요!
저는 이제 주말에 문제를 풀지 않기로 결심했습니다.
아르바이트하면서 문제 푸는 게 힘들기 때문이죠
한 달 동안 열심히 풀었는데
뿌듯함 반,, 아쉬움?! 반..ㅋㅋ
힘들었습니다 여하튼..ㅎㅎㅋ
오늘도 문제를 풀어볼까요!

이 문제에는 제한이 있다.

등수..라는 게 참 나에게 어렵게 다가왔다.
공동 2등이 많으면 그다음에 어떻게 다음 등수를 표시하지..? 가 의문이었다.
지 선생에게 물어볼 때 조건을 두 가지 알려주었다.
1. vector pair로 키, 몸무게 저장
2. 인원수가 별로 없으니.. 이중 for문으로 하나씩 비교하기.
일단 큰 틀을 만들었다.

첫 번째 for문에는 벡터에게 값을 넣어줘야 하고
이중포문 안에는 계산식을 넣어주어야 한다.
지피티의 생각은 이랬다.
일단 등수를 1로 시작하고
i를 기준으로
j가 만약에 더 크다면
i의 등수를 하나 올린다. i는 즉 2 등인셈
나보다 더 키도 크고 몸무게도 크면 2등이 되는 것.
그러니 조건을 && 로 해서
2번째 3번째 4번째 친구들을 비교해 주어야 한다.
나는 항상 이중포문을 풀 때 구구단을 떠올린다.
구구단도 2부터 해서 123456.. 이렇게 계산하듯
얘도 그렇게 생각해서
i번째의 등수를 매겨주는 것이다.
그래서!!

이렇게 해주면
식이 완성된다.
나는 이렇게 해주면 뭔가 등수에 따로 뭘 해줘야 하는 거 아닐까? 했다.
순위가 잘 매겨지려나? 걱정했는데
나보다 큰 사람이 몇 명인지 카운트하는 거다 보니
문제가 없었다.

역발상인 셈...
ㅋㅋㅋㅋㅋㅋ
알고리즘에 브루트포스라고 적혀있었는데
정말 이중포문으로 일일이 체크하는 문제였다.
브루트포스 : 가능한 모든 경우를 전부 시도해서 정답을 찾는 방식
쉬운 듯 어려웠다.
지피티에게 질문하다 보니
문제는 금방 접근이 되긴 하는데...
다시 풀려니 또 머리가 아프다..
ㅋㅋㅋㅋㅋㅋㅋㅋ
또 한 시간 와서 풀어보니
v. pushback()에서 first second에 {} 이거 넣어줘야 하는 것도 까먹고..ㅋㅋ
v [i] 이것도 까먹고
. first 하고 괄호 빼는 것도 까먹었다.
벡터가 더 어려운 거일지도..?
하하 바보!
아무렴! 문제를 끝냈는걸 !!
'C++을 시작해봐요! > 구현문제를 풀어봤어요!' 카테고리의 다른 글
| 백준 C++ 25206번 너의 평점은 ( mapping, 실수 출력 형식 ) (1) | 2026.01.09 |
|---|---|
| 백준 C++ 1924번 2007년 ( switch, 배열 출력 ) (0) | 2026.01.06 |
| 백준 C++ 1259번 팰린드롬수 ( while 조건문, 삼항 연산자 ) (0) | 2026.01.02 |
| 백준 C++ 10798번 세로읽기 ( 문자열 += ) (0) | 2026.01.01 |
| 백준 C++ 11050번 이항 계수 1 ( 펙토리얼 ) (0) | 2025.12.31 |
