목록전체 글 (129)
끄적끄적

1. 크로아티아 알파벳 출처 : https://www.acmicpc.net/problem/2941 2941번: 크로아티아 알파벳 예전에는 운영체제에서 크로아티아 알파벳을 입력할 수가 없었다. 따라서, 다음과 같이 크로아티아 알파벳을 변경해서 입력했다. 크로아티아 알파벳 변경 č c= ć c- dž dz= đ d- lj lj nj nj š s= ž z= www.acmicpc.net 풀이 - 크로아티아 알파벳이 담긴 리스트를 선언 후, for문을 사용하여 해당 리스트를 돈다. - 리스트의 각 원소가 입력 문자열에 있다면 그 부분을 *로 치환해주고, 그 외에는 전부 한 글자이므로 for문을 다 돌고 난 후, 입력 문자열의 길이를 출력해주면 된다. 배운 것

출처 : https://programmers.co.kr/learn/courses/30/lessons/42842 코딩테스트 연습 - 카펫 Leo는 카펫을 사러 갔다가 아래 그림과 같이 중앙에는 노란색으로 칠해져 있고 테두리 1줄은 갈색으로 칠해져 있는 격자 모양 카펫을 봤습니다. Leo는 집으로 돌아와서 아까 본 카펫의 노란색과 programmers.co.kr 1. c++ * for문을 yellow까지 돌면 약수가 중복되는 것에 대한 고민이 있었는데 yellow의 제곱근까지만 for문을 돌아도 모든 약수를 다 구할 수 있다. * yellow가 1x1 형태도 있으므로 for문을 2가 아니라 1부터 돌아야 yellow의 모든 경우의 수를 구할 수 있다. 2. python

출처 : https://programmers.co.kr/learn/courses/30/lessons/42584 코딩테스트 연습 - 주식가격 초 단위로 기록된 주식가격이 담긴 배열 prices가 매개변수로 주어질 때, 가격이 떨어지지 않은 기간은 몇 초인지를 return 하도록 solution 함수를 완성하세요. 제한사항 prices의 각 가격은 1 이상 10,00 programmers.co.kr 문제 분류가 스택/큐로 되어 있어서 스택이나 큐로 접근하려고 했었지만 방법이 떠오르지 않아서 처음 제출할 때에는 이중포문으로 해결하고, 이후 검색을 통해 스택 풀이법을 찾아보았다. 주어지는 시간 초를 이용하였다. 문제에서의 시간은 1,2,3,4,5초...지만 배열의 인덱스와 통일시켜주기 위해 0,1,2,3초 이렇..
출처 : https://programmers.co.kr/learn/courses/30/lessons/12977 코딩테스트 연습 - 소수 만들기 주어진 숫자 중 3개의 수를 더했을 때 소수가 되는 경우의 개수를 구하려고 합니다. 숫자들이 들어있는 배열 nums가 매개변수로 주어질 때, nums에 있는 숫자들 중 서로 다른 3개를 골라 더했을 때 programmers.co.kr 주어진 배열에서 3개의 숫자를 고르면 되므로 3중 for문 이용 IsPrime이라는 소수 판별 함수를 사용하여 소수 판별 1일 경우는 무조건 소수가 아니니 예외 처리 2는 짝수 중 유일한 소수니 예외 처리 2로 나눠지면 소수가 아니니 예외처리 3으로 나눌 때부터 for문 사용해서 num의 제곱근까지 돌린다(제곱근까지 돌리면 충분하다고..
2019 카카오 채용연계형 인턴십 문제 출처 : https://programmers.co.kr/learn/courses/30/lessons/81301 코딩테스트 연습 - 숫자 문자열과 영단어 네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다. 다음은 숫자의 일부 자 programmers.co.kr 처음에는 if-else 문으로 접근하였는데, 코드가 너무 길어지고 복잡해지는 것 같아 구글링을 해봤다. regex_replace()함수를 사용하면 좀 더 간단하게 풀 수 있다. regex_replace 함수는 문자열에서 해당 단어를 찾아 원하는 문자열로 바꿔주는 역할을 한다. regex_replace(대..

출처 : https://programmers.co.kr/learn/courses/30/lessons/62048 코딩테스트 연습 - 멀쩡한 사각형 가로 길이가 Wcm, 세로 길이가 Hcm인 직사각형 종이가 있습니다. 종이에는 가로, 세로 방향과 평행하게 격자 형태로 선이 그어져 있으며, 모든 격자칸은 1cm x 1cm 크기입니다. 이 종이를 격자 선을 programmers.co.kr 허접한 그림 풀이 공식 : (가로+세로) - (가로와 세로의 최대공약수) 최대공약수는 유클리드 호제법을 이용해서 풀면 된다. 주의) 데이터 타입이 long long (w, h가 1억 이하의 자연수이기 때문) 이기 때문에 answer 구할 때 w,h를 long long으로 변환해주어야 한다.
출처 : https://programmers.co.kr/learn/courses/30/lessons/77484 코딩테스트 연습 - 로또의 최고 순위와 최저 순위 로또 6/45(이하 '로또'로 표기)는 1부터 45까지의 숫자 중 6개를 찍어서 맞히는 대표적인 복권입니다. 아래는 로또의 순위를 정하는 방식입니다. 1 순위 당첨 내용 1 6개 번호가 모두 일치 2 5개 번호 programmers.co.kr 크기가 작아서 딱히 정렬해줄 필요는 없고, 이중 포문 써서 맞는지, 0인지만 골라주면 된다.
1. 고양이와 개는 몇 마리 있을까 출처 : https://programmers.co.kr/learn/courses/30/lessons/59040 코딩테스트 연습 - 고양이와 개는 몇 마리 있을까 ANIMAL_INS 테이블은 동물 보호소에 들어온 동물의 정보를 담은 테이블입니다. ANIMAL_INS 테이블 구조는 다음과 같으며, ANIMAL_ID, ANIMAL_TYPE, DATETIME, INTAKE_CONDITION, NAME, SEX_UPON_INTAKE는 각각 동물의 아이디 programmers.co.kr 고양이와 개의 마리수를 세는 것을 COUNT를 이용하면 되고, 고양이가 개보다 먼저 출력되어야 하므로 이건 ORDER BY를 이용하면 된다. SELECT ANIMAL_TYPE, COUNT(ANIM..