본문 바로가기

분류 전체보기172

11월 3주차 회고록 꾸준히 공부하는 습관은 어느정도 다시 자리잡은 것 같다. 다만, 매주 이야기하고 있지만, 시간을 효율적으로 사용하려고 노력 중이다. 여전히 알고리즘은 매일 1문제 씩 풀고있다. 캐시 메모리의 원리 Cache - Temporary Storage 캐시 메모리(Cache Memory)는 CPU 프로세서가 빠른 속도로 데이터를 주고 받을 수 있도록 도와주는 메모리 CPU프로세서와 인접한 곳에 위치 참조 지역성 원리(Locality of Reference) 자주 사용되는 데이터에 대한 판단 기준 (시간 지역성과 공간 지역성으로 구분) 주 기억장치 | 보조기억장치 등과 같은 메모리 저장소의 데이터를 미리 가져와 보관하는 임시 저장소 역할 Cache Blocks - Tag Field, Valid Bit, Data 캐.. 2022. 11. 22.
[백준] 20208 - 진우의 민트초코우유 by C++ https://www.acmicpc.net/problem/20208 20208번: 진우의 민트초코우유 첫번째 줄에 민초마을의 크기인 N과 진우의 초기체력 M, 그리고 민트초코우유를 마실때 마다 증가하는 체력의 양 H가 공백을 두고 주어진다. N, M, H는 모두 10보다 작거나 같은 자연수이다. 두번째 www.acmicpc.net 최근 거의 한 달 동안 매번 풀 때마다 느끼는데 반례도 너무 못찾고 구현력도 웰케 떨어졌는지 모르겠다. 생각하다보면 사고가 그냥 멈춘다. 대체 뭐가 문제일까. 반례도 아니고, 그냥 구현력이 딸려서 2시간 동안 그것만 찾고있었다. 현타가 많이온다.... 알고리즘 방식 시간복잡도는 O(N!)이고 백트래킹을 통해 풀었다. N이 최대 10이라 10^10 = (1 * 10) *(2 * .. 2022. 11. 21.
[백준] 1553 - 도미노 by C++ https://www.acmicpc.net/problem/1553 1553번: 도미노 찾기 도미노의 크기는 1×2이고, 크기가 1×1인 칸으로 나누어져 있다. 칸은 수를 나타내며, 위와 같이 총 28가지가 있다. 크기가 8×7인 격자가 있고, 격자의 각 칸에는 정수가 하나씩 들어있다. 위의 도 www.acmicpc.net 진짜 금방 풀 수 있었는데, 배열 접근 범위 제한과정에서 실수를 했다. 평상 시에 거의 하지 않는 실수여서 찾는데 너무 오래걸렸다 ㅠㅠ 침착하게 차근차근 코드를 짜자 핵심 변수 int board[8][7] : 입력된 격자를 저장 int vis[8][7] : 격자가 도미노로 채워졌는지 여부를 확인 int domino[7][7] : (r, c)의 값을 가지는 도미노의 잔여 여부 확인 voi.. 2022. 11. 16.
11월 2주차 회고록 매일 알고리즘을 풀기로 한 것은 잘한 것 같다. 스터디를 오전에 진행하다보니 아침 일찍 일어나게되고 그러다보니 하루를 길게 쓴다. 다만 부작용으로는 잠을 너무 늦게자는 바람에 목요일부터였나.... 졸려서 정신을 못차렸다. 그리고 일요일은 하루종일 잤다 ㅋㅋㅋㅋ 이게 맞나.... 조금 일찍자려고 노력을 해야될 것 같다. 생각보다 공부하는 시간에 비해 공부하는 양이 얼마 안된다. 정확히 말하자면 앉아있는 시간에 비해 공부하는 양이 얼마안된다. 백기선님이 스프링 관련해서 공부하는 방법을 유튜브에 찍은 동영상을 봤었는데, 딱 그 말이 떠오른다. 처음 공부할 때는 가성비 수준까지만 공부하면 된다고.... 수준에 맞지 않는 부분을 너무 깊게 이해하려고하는데 시간을 많이 쓰는 것 같다. 가성비를 생각해서 공부하는 습.. 2022. 11. 14.
[백준] 2217 - 로프 by C++ https://www.acmicpc.net/problem/2217 2217번: 로프 N(1 ≤ N ≤ 100,000)개의 로프가 있다. 이 로프를 이용하여 이런 저런 물체를 들어올릴 수 있다. 각각의 로프는 그 굵기나 길이가 다르기 때문에 들 수 있는 물체의 중량이 서로 다를 수도 있다. 하 www.acmicpc.net 며칠전부터 반례를 잘못생각하고, 구현도 잘못하고 슬럼프인 것 같다.... 멍청해졌거나.... 정말 쉽게 풀었던 기억이 나는데 이제와서 고민하고 있으니 가슴이 조금 아프다 알고리즘 방식 먼저 예시의 15 10 로프 2개를 사용해서 버틸 수 있는 최대 중량은 최대 중량이 낮은 로프가 버틸 수 있는 중량, 즉 10 * 2 = 20이다. 이를 일반화하면 내림차순으로 정렬된 수 n1, n2, n3.. 2022. 11. 8.
11월 1주차 회고록 알고리즘 스터디를 시작했다. 하루에 1문제씩 가볍게 하려는 마음으로 시작했는데, 막상 시작하고서 의욕이 앞서서 어려운 문제들을 선정한 나머지, 알고리즘에 시간을 생각보다 너무 많이 썼다. 최근에 코딩테스트 때문에 C++(알고리즘)위주로 공부했어서 그런가, 자바 수업 듣는데 이걸 까먹네? 싶은 것들이 있었다. 어쨋든 java & spring으로 취업준비를 하기 때문에, 11월 한달동안은 알고리즘 매일 1문제 + Java의 정석 7장까지 + 패캠 제공 인강 완강을 목표로 공부할 계획이다. 알고리즘은 일반적(?)으로 코테에서 많이나오는 것들 위주로 진행하는게 좋을 것 같다. 2의 보수 처음 자바의 정석을 공부할 때도 몇 시간씩 매달려서 겨우겨우 이해했던게 기억이 난다. 결과적으로 핵심은 2의 보수의 정의가 어.. 2022. 11. 8.