본문 바로가기
반응형

[알고리즘 + 자료구조]/[백준]214

[BaekJoon/백준] 1427번 1,000,000,000 이하의 수가 입력되었을 때, 각 자리수를 내림차순으로 정렬하는 문제. 카운팅 정렬의 기능 일부를 사용해 간단히 구현했다. #include int main() { long x; int a[10] = {0,}; scanf("%ld", &x); while(x > 0) { a[x%10]++; x/=10; } for(int i = 9; i >= 0; i--) { for(int j = 0; j < a[i]; j++) { printf("%d", i); } } } 쉬운문제지만 숏코딩해서 짜릿해. 2020. 11. 29.
[BaekJoon/백준] 2108번 빡세다.. 반례 못찾아서 시간 꽤 썼다.. 똑같은 실수를 반복했다. 저번에도 자꾸 틀렸다고 해서 반례 못찾고 낑낑댔다가, float는 부정확하니 double을 사용하시라는 조언을 듣고 자료형을 double로 바꿨을 뿐인데 문제가 풀렸던 기억이 있다. 그리고 설명 꼼꼼히 다 검색해서 개많이 찾아보고, 꼭꼭 알아두자며 블로그에 설명글도 휘황찬란하게 열심히 작성했던 것 같은데......시간노력투자 개많이했는데... 난 또 똑같은 바보짓을 했다. 뭐가틀린거야~하면서 반례 찾다가.. 또다시 float 대신 double을 써보라는 조언을 듣고.. 또다시 double로 바꿔봤더니 문제 풀렸다.. 난 왤케 멍청하지..ㅜ 암기하자. float 대신 double 사용! www.acmicpc.net/board/view/56.. 2020. 11. 28.
[BaekJoon/백준] 10989번 계수정렬 = 카운팅정렬 = 도수분포표 정렬을 사용하는 문제다. 배운대로 정렬알고리즘을 암만 짜봐도 메모리 초과가 떴다 ㅜ.ㅜ 1. 배열 3개 사용 ( 숫자범위 배열 1개 + 요소갯수범위 배열 2개) -> 메모리 초과 2. 1번 방법 + 요소값중에 최댓값과 최솟값을 구해서 숫자범위 배열의 크기를 줄임 -> 메모리 초과 허탈한 시간을 보내고 나니, 내가 간과하던 것이 있었다. 문제에서 주어진 숫자 범위는 1 ~ 10,000 그리고 문제에서 주어진 요소 갯수 범위는 1 ~ 10,000,000 나는 후자에 비하면 매우 작은 전자의 범위만 자꾸 계속해서 줄이려고 한 것ㅋㅋㅋ.. 이건 내가 질문글을 열람하면서 알게됐다 ㅠㅜ (웬만하면 질문글 절대안보려는데.... 이번이 두번째..) 그리고 메모리 계산에 대해서도 다.. 2020. 11. 27.
[BaekJoon/백준] 2751번 이 문제를 풀기까지의 여행은 10월 5일로 거슬러올라간다... 소트 문제들이 서서히 나오는걸보고, 아 공부좀 해야겠다 싶어서 '자료구조와 알고리즘' 도서를 구입해 공부했고 현재 정렬단원을 마무리해서, 이제 다시 백준을 풀어본다!!!!!! 총 3가지로 풀었다. 1. Merge_Sort (병합 정렬) Feat. 배열 공유방식 #include #include static int *buff; void __merge_sort(int a[], int left, int right) { if(left < right) { int p = 0; int i; int j = 0; int k = left; int center = (left + right) / 2; __merge_sort(a, left, center); __mer.. 2020. 11. 26.
반응형