분류 전체보기

    유데미(udemy) - 인강계의 steam, 인강 연쇄할인마

    예전부터 MOOC와 같은 무료 공개 강의가 꽤 유명했다. 한국에도 K-MOOC나 kocw처럼 대학에서 직접 운영하는 사이버 강의나 녹화한 강의를 무료로 들을 수 있는 시스템이 존재한다. 하지만 개인적으로는 대학 강의라고 해서 퀄리티가 썩 좋은 편은 아닌 것 같다. k-mooc에서 제공하는 강의는 회사원이 억지로 들어야 하는 온라인 연수 프로그램 같은 느낌이 강해서 몰입도가 낮고, kocw는 대학 강의다 보니 관련 교재도 굳이 구하기엔 번거롭고 루즈한 면이 있다. 그래서 많은 사람들이 공짜 강의를 놔두고 유료 강의로 넘어간다. 패스트캠퍼스나 유니스터디처럼 대학 전공 강의를 다루는 곳도 있지만 클래스101이나 탈잉처럼 가볍게 즐길 수 있는 취미거리를 강의하는 사이트도 있다. 또는 인프런처럼 온라인 코딩 강의..

    [C언어] 백준 1011. Fly me to the Alpha Centauri

    문제 우현이는 어린 시절, 지구 외의 다른 행성에서도 인류들이 살아갈 수 있는 미래가 오리라 믿었다. 그리고 그가 지구라는 세상에 발을 내려 놓은 지 23년이 지난 지금, 세계 최연소 ASNA 우주 비행사가 되어 새로운 세계에 발을 내려 놓는 영광의 순간을 기다리고 있다. 그가 탑승하게 될 우주선은 Alpha Centauri라는 새로운 인류의 보금자리를 개척하기 위한 대규모 생활 유지 시스템을 탑재하고 있기 때문에, 그 크기와 질량이 엄청난 이유로 최신기술력을 총 동원하여 개발한 공간이동 장치를 탑재하였다. 하지만 이 공간이동 장치는 이동 거리를 급격하게 늘릴 경우 기계에 심각한 결함이 발생하는 단점이 있어서, 이전 작동시기에 k광년을 이동하였을 때는 k-1 , k 혹은 k+1 광년만을 다시 이동할 수 ..

    [파이썬] 백준 9020. 골드바흐의 추측

    문제 1보다 큰 자연수 중에서 1과 자기 자신을 제외한 약수가 없는 자연수를 소수라고 한다. 예를 들어, 5는 1과 5를 제외한 약수가 없기 때문에 소수이다. 하지만, 6은 6 = 2 × 3 이기 때문에 소수가 아니다. 골드바흐의 추측은 유명한 정수론의 미해결 문제로, 2보다 큰 모든 짝수는 두 소수의 합으로 나타낼 수 있다는 것이다. 이러한 수를 골드바흐 수라고 한다. 또, 짝수를 두 소수의 합으로 나타내는 표현을 그 수의 골드바흐 파티션이라고 한다. 예를 들면, 4 = 2 + 2, 6 = 3 + 3, 8 = 3 + 5, 10 = 5 + 5, 12 = 5 + 7, 14 = 3 + 11, 14 = 7 + 7이다. 10000보다 작거나 같은 모든 짝수 n에 대한 골드바흐 파티션은 존재한다. 2보다 큰 짝수..

    [c언어] 백준 10757. 큰 수 A + B

    문제 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 A와 B가 주어진다. (0 < A,B strlen(B) ? strlen(A) : strlen(B); 이제 len만큼 각 자릿수를 더한다. 각 자리에는 0~9가 char로 저장되어 있다. 이 문자를 먼저 숫자로 변환해야 한다. 숫자 0의 아스키 코드는 48이다. 각 자리에 48을 빼고 int형으로 저장하면 문자를 숫자로 바꿀 수 있다. 문자끼리 뺄셈을 해도 같은 결과이다. 예를 들어 A - C는 -2이다. 여기에 받아올림이 발생하면 1을 더해줘야 하므로 carry값도 함께 더한다. int sum = A[i] - '0' + B[i] - '0' + carry; 두 숫자의 덧셈이니 받아올림하는 수는 최대 1이다. ..

    [파이썬] 백준 3036. 링

    문제 상근이는 창고에서 링 N개를 발견했다. 상근이는 각각의 링이 앞에 있는 링과 뒤에 있는 링과 접하도록 바닥에 내려놓았다. 상근이는 첫 번째 링을 돌리기 시작했고, 나머지 링도 같이 돌아간다는 사실을 발견했다. 나머지 링은 첫 번째 링 보다 빠르게 돌아가기도 했고, 느리게 돌아가기도 했다. 이렇게 링을 돌리다 보니 첫 번째 링을 한 바퀴 돌리면, 나머지 링은 몇 바퀴 도는지 궁금해졌다. 링의 반지름이 주어진다. 이때, 첫 번째 링을 한 바퀴 돌리면, 나머지 링은 몇 바퀴 돌아가는지 구하는 프로그램을 작성하시오. 입력 첫째 줄에 링의 개수 N이 주어진다. (3 ≤ N ≤ 100) 다음 줄에는 링의 반지름이 상근이가 바닥에 놓은 순서대로 주어진다. 반지름은 1과 1000를 포함하는 사이의 자연수이다. 출..

    [파이썬] 백준 1037. 약수

    문제 양수 A가 N의 진짜 약수가 되려면, N이 A의 배수이고, A가 1과 N이 아니어야 한다. 어떤 수 N의 진짜 약수가 모두 주어질 때, N을 구하는 프로그램을 작성하시오. 입력 첫째 줄에 N의 진짜 약수의 개수가 주어진다. 이 개수는 50보다 작거나 같은 자연수이다. 둘째 줄에는 N의 진짜 약수가 주어진다. 1,000,000보다 작거나 같고, 2보다 크거나 같은 자연수이고, 중복되지 않는다. 출력 첫째 줄에 N을 출력한다. N은 항상 32비트 부호있는 정수로 표현할 수 있다. 구상 약수를 생각할 때, 보통은 쌍으로 생각한다. 16은 1 * 16, 2 * 8, 4 * 4로 표현할 수 있으므로 약수는 1, 2, 4, 8, 16이다. 약수를 이렇게 크기 순으로 나열했을 때, N은 가장 작은 수와 가장 큰..

    [파이썬] 백준 1316번. 그룹 단어 체커

    문제 그룹 단어란 단어에 존재하는 모든 문자에 대해서, 각 문자가 연속해서 나타나는 경우만을 말한다. 예를 들면, ccazzzzbb는 c, a, z, b가 모두 연속해서 나타나고, kin도 k, i, n이 연속해서 나타나기 때문에 그룹 단어이지만, aabbbccb는 b가 떨어져서 나타나기 때문에 그룹 단어가 아니다. 단어 N개를 입력으로 받아 그룹 단어의 개수를 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 단어의 개수 N이 들어온다. N은 100보다 작거나 같은 자연수이다. 둘째 줄부터 N개의 줄에 단어가 들어온다. 단어는 알파벳 소문자로만 되어있고 중복되지 않으며, 길이는 최대 100이다. 출력 첫째 줄에 그룹 단어의 개수를 출력한다. 구상 체크리스트를 만든다. 입력받은 단어에서 한 문자씩 가져와 ..

    [파이썬] 백준 2941. 크로아티아 알파벳

    문제 예전에는 운영체제에서 크로아티아 알파벳을 입력할 수가 없었다. 따라서, 다음과 같이 크로아티아 알파벳을 변경해서 입력했다. 크로아티아 알파벳 변경 č c= ć c- dž dz= đ d- lj lj nj nj š s= ž z= 예를 들어, ljes=njak은 크로아티아 알파벳 6개(lj, e, š, nj, a, k)로 이루어져 있다. 단어가 주어졌을 때, 몇 개의 크로아티아 알파벳으로 이루어져 있는지 출력한다. dž는 무조건 하나의 알파벳으로 쓰이고, d와 ž가 분리된 것으로 보지 않는다. lj와 nj도 마찬가지이다. 위 목록에 없는 알파벳은 한 글자씩 센다. 입력 첫째 줄에 최대 100글자의 단어가 주어진다. 알파벳 소문자와 '-', '='로만 이루어져 있다. 단어는 크로아티아 알파벳으로 이루어져 ..