728x90
반응형

분류 전체보기 62

GPT한테 백준 풀게 해도 될까?

결론부터 이야기하면 되긴 하는데 현타가 올 수 있다. 백준 풀기 힘들 때 스트릭 유지하려고 GPT한테 풀게 하는 상상을 한 번쯤 해볼 수 있다. 시켜보면 은근히 척척 풀기도하고 그럴듯해 보인다. 근데 막상 코드 돌려보면 결과가 제대로 안 나오는 게 대부분이다. 전체적인 흐름은 짜져 있으니 디버깅해서 제출할 수 있긴 한데 솔직히 얘가 시간복잡도 고려해서 짰을지도 의문이고 어디 깃허브 긁어와서 그냥 준거면 그것대로 베낀 것 같아서 좀 그렇다. 안 되는 부분 디버깅 하려고 코드 읽어보고 로직 이해하다 보면 그냥 자기가 푸는 거랑 품이 큰 차이도 없고 심지어 고민하는 과정에서 배울 수 있는 건 배우지도 못한다. 애초에 로직이 맞는지도 모르기 때문에 디버깅 한참 하고도 틀릴 가능성이 높다. 그러면 얘가 잘 푸는 ..

여러문제 2023.09.16

대학생 때 학교 개발 동아리 들어가야 할까?

결론부터 이야기하면 사람들한테 전공책 pdf 받는 게 목적이면 들어가고, 배우려는 거면 인프런 결제해라 개발 공부는 해야겠고 혼자 하기에는 뭐부터 해야할지 모르겠어서 개발 동아리를 들어갈지 고민하는 사람들이 있다. 우선 이 고민은 동아리를 한 번도 안 들어가봐서 개발 동아리에 막연한 기대가 있는 사람들이 할만한 고민이다. 막상 들어가보면 개발 동아리라고 해봐야 특별한 활동은 없고 학생들끼리 술 마시고 노는 게 대부분이다. 간혹 동아리 내부 멘토링이나 프로젝트 대회가있지만 멘토링은 그냥 비슷한 대학생들이 학부레벨에서 선행 수업 조금 알려주는 정도이고, 이마저도 보통 일정대로 잘 진행되지도 않는 편이다. 프로젝트 대회도 산출물 보면 팀 반절은 런친지 오래이고 한 명이 하루 밤새서 만들어서 퀄리티가 흠스러운게..

여러문제 2023.09.15

다른사람 블로그 글 스타일 베껴도 될까?

결론부터 이야기하면 난 된다고 생각한다. 뭐든지 모방에서 시작하는 법인데 굳이 자기 검열에 걸려서 따라 하지 않을 이유가 없다. 어차피 따라서 하다보면 100% 따라 하지도 못하고 자기 스타일로 빠지게 되어있다. 애초에 대기업들도 스타트업 하나가 성공하면 따라 하기 바쁜데 이런 몇 명 보지도 않는 블로그의 글은 뭐 상관있겠나 그리고 글을 자기가 잘 쓰는 능력이 있으면 몰라도 글 쓰는 능력이 부족한 사람이라면 다른 사람의 센스나 좋은 글부터 따라서 써보는 게 글 쓰는 실력을 늘리는 데에도 좋다고 본다. 뭔가 재미있고 좋은 정보를 담은 글은 누구나 보고 싶기 마련인데 다른 사람들이 읽고 싶어하는 정보를 추가 제공하는 게 독자들한테 나쁘다는 생각도 들지 않는다. 아무튼 뭔가 하고싶은 마음이 들었다면 뚝심 있게..

여러문제 2023.09.14

[1958번][C/C++] LCS 3

https://www.acmicpc.net/problem/1958 1958번: LCS 3 첫 줄에는 첫 번째 문자열이, 둘째 줄에는 두 번째 문자열이, 셋째 줄에는 세 번째 문자열이 주어진다. 각 문자열은 알파벳 소문자로 이루어져 있고, 길이는 100보다 작거나 같다. www.acmicpc.net 접근 처음에는 LCS가 무조건 이어진 문자열 이어야 한다고 생각해서 이어진 문자열에 대한 코드를 작성했다. 악랄하게도 주어진 예제도 그렇게 이해하고 풀 수 있는 예제였다 ㅠ 예제 입력 abc abc ac 예제 출력 2 a, b가 떨어져있더라도 그냥 띄어서 개수를 셀 수 있다는 것이다.. 위와 같은 반례가 있기 때문에 다르게 다 풀고서 처음부터 다시 접근했다. 해결 기본적으로 DP로 풀어야한다는 감이 온다. (a..

[UNIX] read() write() 시스템 콜의 사용법과 주의사항

UNIX file 접근의 기초 read/write 시스템 콜에 대해 설명하기 전에 먼저 UNIX file 접근의 기초에 대해서 이해해 보자. UNIX상의 모든 file은 byte들의 linear sequence이다. 이 말은 즉, Text file과 Binary file이 따로 나누어져 있지 않다는 의미이다. 모든 파일은 Binary file이다. UNIX에서는 이런 파일들을 프로세스상에서 구분하기 위해서 open 해놓은 파일에 대해서 file descriptor라는 파일 구분자를 운영한다. 이는 file을 open 할 때마다 구조체 배열에 파일의 메타데이터가 저장되는 식으로 작동된다. 참고로 open 시스템 콜을 사용해서 file을 open 하게 되면 가공되지 않은 binary code를 그대로 받게 ..

[1550번][C/C++] 16진수

https://www.acmicpc.net/problem/1550 1550번: 16진수 첫째 줄에 16진수 수가 주어진다. 이 수의 최대 길이는 6글자이다. 16진수 수는 0~9와 A~F로 이루어져 있고, A~F는 10~15를 뜻한다. 또, 이 수는 음이 아닌 정수이다. www.acmicpc.net 16진수 수가 입력으로 들어오면 10진수로 변환해서 출력하는 문제이다. 16진수의 크기가 작아서 무식하게 구현했다. 16진수를 문자로 받은 다음에 0~F를 0~16으로 바꿔주고 각 수에 자리수만큼 16을 곱해주며 다 더해주면 답이다. #include #include #include #include #include using namespace std; char str[7]; int len, ans, ret, c..

[2239번][C/C++] 스도쿠

https://www.acmicpc.net/problem/2239 2239번: 스도쿠 스도쿠는 매우 간단한 숫자 퍼즐이다. 9×9 크기의 보드가 있을 때, 각 행과 각 열, 그리고 9개의 3×3 크기의 보드에 1부터 9까지의 숫자가 중복 없이 나타나도록 보드를 채우면 된다. 예를 들어 다 www.acmicpc.net 미완성된 스도쿠 판이 입력으로 주어질 때, 스도쿠판을 완성해서 출력하는 문제이다. 이 문제는 일단 N-Queen과 굉장히 유사하다. N-Queen문제를 생각해보면 보드에서 모든 자리를 살펴보는데 각 자리에 대해서 queen을 놓을 수 있는지 없는지 판단한 뒤, 놓을 수 있는 경우에는 놓고 지나거나 안 놓고 지나가고, 놓을 수 없는 경우에는 안놓고 지나간다. 이러한 백트래킹은 다음과 같은 논리..

[1038번][C/C++] 감소하는 수

https://www.acmicpc.net/problem/1038 1038번: 감소하는 수 음이 아닌 정수 X의 자릿수가 가장 큰 자릿수부터 작은 자릿수까지 감소한다면, 그 수를 감소하는 수라고 한다. 예를 들어, 321과 950은 감소하는 수지만, 322와 958은 아니다. N번째 감소하는 수를 www.acmicpc.net 정수 N이 주어질 때, N번째 감소하는 수를 출력하는 문제이다. 321, 9741, 987654321 등은 감소하는 수의 예시다. 일단 N번째 수를 찾으려면 그 전의 수부터 찾아가면서 백트래킹으로 N번째 수에 도달하는 방법을 사용해야 함을 알 수 있다. 백트래킹을 어떻게 수행할지 결정하기 위해서는 우선, 어떤 규칙으로 수를 카운팅 해야하는지 수열의 규칙을 분석해봐야 한다. 이 문제에..

[2342번][C/C++] Dance Dance Revolution

https://www.acmicpc.net/problem/2342 2342번: Dance Dance Revolution 입력은 지시 사항으로 이루어진다. 각각의 지시 사항은 하나의 수열로 이루어진다. 각각의 수열은 1, 2, 3, 4의 숫자들로 이루어지고, 이 숫자들은 각각의 방향을 나타낸다. 그리고 0은 수열의 마 www.acmicpc.net "Dance Dance Revolution" 일명 DDR을 플레이할 때, 왼발과 오른발의 위치에 따라 다음 버튼을 누르는데 소비하는 에너지가 다르다면 눌러야하는 버튼이 순서대로 주어졌을 때, 가장 적은 에너지로 버튼을 누를 수 있는 에너지를 구하는 문제이다. 일단 비슷한 문제가 하나 생각나는데 [2618번]경찰차 문제가 생각난다. 하지만 이 문제가 더 단순화된 버..

728x90
반응형