본문 바로가기

코테83

[백준 11651번][C++] 좌표 정렬하기 2 #include #include #include #include #include #include #include #include #include #include #include using namespace std; int main() { // 쓰레드 환경이 아닐때 버퍼를 분리하여 처리속도를 빠르게 해줌 ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int N; cin >> N; map XY; for (int i = 0; i > x >> y; XY[y].push_back(x); } for (map::iterator iter = XY.begin(); iter != XY.end(); iter+.. 2023. 7. 29.
[백준 11650번][C++] 좌표 정렬하기 #include #include #include #include #include #include #include #include #include #include #include using namespace std; int main() { // 쓰레드 환경이 아닐때 버퍼를 분리하여 처리속도를 빠르게 해줌 ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int N; cin >> N; map XY; for (int i = 0; i > x >> y; XY[x].push_back(y); } for (map::iterator iter = XY.begin(); iter != XY.end(); iter+.. 2023. 7. 28.
[백준 1427번][C++] 소트인사이드 #include #include #include #include #include #include #include #include #include #include #include using namespace std; int main() { // 쓰레드 환경이 아닐때 버퍼를 분리하여 처리속도를 빠르게 해줌 ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int N; cin >> N; vector count(10); // 0~9까지의 숫자들의 갯수를 담을 벡터 // 자릿수 별로 갯수를 파악 while (N > 0) { int curNum = N % 10; // 마지막 자릿수 count[curNum]++; N /= 10; } // 자릿수 별 갯.. 2023. 7. 27.
[백준 25305번][C++] 커트라인 #include #include #include #include #include #include #include #include #include #include #include using namespace std; int main() { // 쓰레드 환경이 아닐때 버퍼를 분리하여 처리속도를 빠르게 해줌 ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int N, k; cin >> N >> k; vector v(N); for (int i = 0; i > v[i]; } for (int i = 0; i < v.size() - 1; i++) { int maxVal = v[i]; int maxIndex = i; fo.. 2023. 7. 24.
[백준 2587번][C++] 대표값 2 #include #include #include #include #include #include #include #include #include #include #include using namespace std; int main() { // 쓰레드 환경이 아닐때 버퍼를 분리하여 처리속도를 빠르게 해줌 ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); vector v(5); int sum = 0; // 합계 int avg = 0; // 평균 // 원소 입력 for (int i = 0; i > v[i]; sum += v[i]; } avg = sum / v.size(); cout 2023. 7. 23.
[백준 2750번][C++] 수 정렬하기 - 9. 카운팅 정렬 #include #include #include #include #include #include #include #include #include #include #include using namespace std; void PositiveCountingSort(vector& v, int maxVal) { vector count(maxVal + 1); // 각 데이터 별 개수를 저장할 벡터 for (int i = 0; i < v.size(); i++) { count[v[i]]++; // 각 데이터 별로 갯수를 셈 } // 0부터 오름차순으로 정렬할 것이므로 0번은 구했던 값 그대로이기 때문에 1부터 시작 for (int j = 1; j < count.size(); j++) { // 자신의 값에 이전의 원소.. 2023. 7. 23.
[백준 2750번][C++] 수 정렬하기 - 8. 기수 정렬 #include #include #include #include #include #include #include #include #include #include using namespace std; void RadixSort(vector& v, int maxRadix, int firstIndex) { // maxRadix는 [최대 자릿수 + 1] 이므로 그 이전까지만 반복을 진행 for (int i = 1; i 104, 103은 1번, 555는 5번, 777은 7번 // 0번 인덱스는 해당 자릿수의 값이 없는 경우 // ex) 100의 자릿수 검사 -> 1,.. 2023. 7. 21.
[백준 2705번][C++] 수 정렬하기 - 7. 쉘 정렬 #include #include #include #include #include #include #include #include #include #include using namespace std; void SkipInsertionSort(vector& v, int start, int skipNum) { // 숫자를 건너뛰는 삽입정렬 for (int i = start + skipNum; i = 0; j -= skipNum) { if (v[j] > originNum) { // 앞의 숫자가 더 큰 경우 v[j + skipNum] =.. 2023. 7. 20.
[백준 14425번][C++] 문자열 집합 #include #include #include #include #include #include #include #include #include #include using namespace std; int main() { int result = 0; int N, M; cin >> N >> M; map map; for (int i = 0; i > s; map.insert({ s, true }); } for (int i = 0; i > s; if (map[s]) result++; } cout 2023. 7. 19.
[백준 2705번][C++] 수 정렬하기 - 6.병합 정렬 #include #include #include #include #include #include #include #include #include #include using namespace std; void Merge(vector& v, int left, int mid, int right) { int i = left; // 왼쪽 부분 시작지점 int j = mid + 1; // 오른쪽 부분 시작지점 int k = left; // 원소를 넣을 위치 vector sortedVec(v.size()); // 정렬된 벡터를 저장할 공간 // 왼쪽부분과 오른쪽 부분의 원소들을 하나씩 차례로 비교하여 더 작은 원소를 sortedVec에 넣음. // 왼쪽 부분과 오른쪽 부분은 이미 오름차순으로 정렬되어있는 상태이므로 .. 2023. 7. 19.
[백준 2750번][C++] 수 정렬하기 - 5. 삽입 정렬 #include #include #include #include #include #include #include #include #include #include using namespace std; void InsertionSort(vector& v) { for (int i = 1; i = 0; j--) { if (insertVal swap 아님 // -> 뒤의 원소에 앞의 원소의 값을 넣음 v[j + 1] = v[j]; insertIndex--; } else { /.. 2023. 7. 18.
[백준 10815번][C++] 숫자 카드 - map #include #include #include #include #include #include #include #include #include #include using namespace std; int main() { int N; cin >> N; map map; for (int i = 0; i > x; map.insert({ x, true }); } int M; cin >> M; vector v; for (int i = 0; i > x; v.push_back(x); } for (int i = 0; i M; for (int i = 0.. 2023. 7. 17.