본문 바로가기

전체 글92

[백준] 2751번 수 정렬하기2 (병합정렬) -문제 -코드 #include #include using namespace std; vector a; vector tmp; void divide(int lt, int rt) { int mid, p1, p2, p3; if (lt 2022. 7. 31.
[백준] 2805번 나무자르기 (이분탐색) -문제 "틀렸습니다" 나온 이유! 자료형의 중요성! int 범위 : -2,147,483,648~ 2,147,483,647 높이의 최대 범위가 1,000,000,000 이므로 sum은 int 범위를 넘어서는 경우가 있을 수 있음 int sum -> long long int sum으로 변경해서 해결함 자료형 관련 참고https://melonicedlatte.com/algorithm/2018/03/04/022437.html -코드 #include #include using namespace std; int m; bool cal(int h, vector a) { long long int sum = 0; for (int i = 0; i h) sum += a[i.. 2022. 7. 30.
[백준] 1920번 수 찾기 (이분탐색) -문제 -코드 #include #include #include using namespace std; int main() { int n, m; scanf("%d", &n); vector a(n); for (int i = 0; i < n; i++) { scanf("%d", &a[i]); } scanf("%d", &m); vector b(m); for (int i = 0; i < m; i++) { scanf("%d", &b[i]); } sort(a.begin(), a.end()); int k, lt, rt, mid; vector res(m); for (int i = 0; i < m; i++) { k = b[i]; lt = 0; rt = n - 1; while (lt k) rt = mid - 1; else lt.. 2022. 7. 30.
[백준] 2667번 단지번호붙이기 (BFS) -문제 문제 조건 제대로 읽기! 출력결과(단지내 집의 수)를 오름차순으로 정렬해서 출력해야한다! -코드 #include #include #include #include using namespace std; int dx[4] = {1,0,-1,0}; int dy[4] = {0,1,0,-1}; int map[25][25]; int main() { int n; scanf("%d", &n); for (int i = 0; i < n; i++) { for (int j = 0; j < n; j++) { scanf("%1d", &map[i][j]); // 붙어있는 수 } } queue q; int cnt = 0; vector res; for (int i = 0; i < n; i++) { for (int j = 0; j.. 2022. 7. 30.