[2020 kakao blind recruitment] lv2 문자열 압축(cpp/python)
·
Algorithm/Programmers
문자열 압축 코딩테스트 연습 - 문자열 압축 데이터 처리 전문가가 되고 싶은 어피치는 문자열을 압축하는 방법에 대해 공부를 하고 있습니다. 최근에 대량의 데이터 처리를 위한 간단한 비손실 압축 방법에 대해 공부를 하고 있는데, 문자 programmers.co.kr 문제 설명 주어지는 문자열을 특정 길이만큼 잘라서 같은 문자면 숫자로 바꿔 표시했을 때의 (1은 생략) 그 문자열의 길이가 가장 짧은 순간을 찾는 문제 처음에는 1부터 주어지는 문자열의 길이만큼 자를 길이를 늘려가며 모두 탐색해야하나 싶었지만, 잘 생각해보면 해당 길이만큼의 중복되는 문자열을 찾는 것이므로, 문자열의 길이/2만큼만 탐색하면된다. 문제 풀이 소스코드 : C++ 예전 풀이 #include #include #include #inclu..
[Programmers - lv01] 약수의 합(cpp / python)
·
Algorithm/Programmers
약수의 합 문제 설명 i를 1부터 n까지 n을 i로 나눈 나머지가 0 이라면 그 수 의 약수이므로 누적 합을 구한다. 문제 풀이 소스코드 : C++ #include #include #include using namespace std; int solution(int n) { int answer = 0; for(int i=1; i
[Programmers - lv01] 시저 암호(cpp / python)
·
Algorithm/Programmers
시저 암호 코딩테스트 연습 - 시저 암호 어떤 문장의 각 알파벳을 일정한 거리만큼 밀어서 다른 알파벳으로 바꾸는 암호화 방식을 시저 암호라고 합니다. 예를 들어 AB는 1만큼 밀면 BC가 되고, 3만큼 밀면 DE가 됩니다. z는 1만큼 밀면 a가 programmers.co.kr 문제 설명 주어지는 문자열을 문자단위로 체크하여 대문자, 소문자, 공백인지 판단하고, 값을 n 만큼씩 밀어준다. 이 때 대문자나 소문자가 'Z' 또는 'z'를 넘어간다면 'A' 'a' 부터 새로 계산해준다. 문제 풀이 소스코드 : C++ #include #include #include using namespace std; int chk_alpha(char c){ if(c>='a'&&c='A'&& c'Z')s[i] = 'A'-1 +..
[Programmers - lv01] 문자열을 정수로 바꾸기(cpp / python)
·
Algorithm/Programmers
문자열을 정수로 바꾸기 코딩테스트 연습 - 문자열을 정수로 바꾸기 문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요. 제한 조건 s의 길이는 1 이상 5이하입니다. s의 맨앞에는 부호(+, -)가 올 수 있습니다. s는 부호와 숫자로만 이루어져있습니 programmers.co.kr 문제 설명 내장 함수를 이용하여 풀어도 되지만 직접 구현도 어렵지 않다. 문제 풀이 소스코드 : C++ #include #include using namespace std; int solution(string s) { return stoi(s); } #include #include using namespace std; int solution(string s) { int ret = 0, sign=1;..
[Programmers - lv01] 수박수박수박수박수박수(cpp / python)
·
Algorithm/Programmers
수박수박수박수박수박수 코딩테스트 연습 - 수박수박수박수박수박수? 길이가 n이고, 수박수박수박수....와 같은 패턴을 유지하는 문자열을 리턴하는 함수, solution을 완성하세요. 예를들어 n이 4이면 수박수박을 리턴하고 3이라면 수박수를 리턴하면 됩니다. 제한 조�� programmers.co.kr 문제 설명 간단한 문제. 문제 풀이 소스코드 : C++ #include #include using namespace std; string solution(int n) { string answer = ""; for(int i=0; i
[Programmers - lv02] 기능개발 (cpp / python)
·
Algorithm/Programmers
기능개발 코딩테스트 연습 - 기능개발 프로그래머스 팀에서는 기능 개선 작업을 수행 중입니다. 각 기능은 진도가 100%일 때 서비스에 반영할 수 있습니다. 또, 각 기능의 개발속도는 모두 다르기 때문에 뒤에 있는 기능이 앞에 있는 �� programmers.co.kr 문제 설명 처음에 '스택과 큐 모두 이용해서 풀어지겠다'라는 생각에 시간이 조금 걸렸다. 오랜만에 lv02문제를 풀어서 그런지.. 1시간 정도 걸린 것 같다. 앞 쪽의 작업이 끝나기 전에는 뒤 쪽작업들을 맨 앞의 작업보다 더 오래 걸리는 작업이 생기기 전까지 모두 대기 큐에 넣어서, 대기 큐에 있는 작업들을 처리하고, 또 다음 작업들을 처리하는 방식으로 문제를 해결하려고 했다. 그런데 문제를 잘 이해해보면 문제에서는 각 작업들이 '언제' 끝..
[Programmers - lv01] 소수 찾기 (cpp / python)
·
Algorithm/Programmers
소수 찾기 코딩테스트 연습 - 소수 찾기 1부터 입력받은 숫자 n 사이에 있는 소수의 개수를 반환하는 함수, solution을 만들어 보세요. 소수는 1과 자기 자신으로만 나누어지는 수를 의미합니다. (1은 소수가 아닙니다.) 제한 조건 n은 2이상 programmers.co.kr 문제 설명 에라토스테네스의 체를 이용하여 소수를 찾는 문제 문제 풀이 *소스코드 : C++ * #include #include using namespace std; int solution(int n) { int answer = 0; vector tmp(n+1, true); for (int i=2; i
[Programmers - lv01] 서울에서 김서방 찾기 (cpp / python)
·
Algorithm/Programmers
서울에서 김서방 찾기 코딩테스트 연습 - 서울에서 김서방 찾기 String형 배열 seoul의 element중 Kim의 위치 x를 찾아, 김서방은 x에 있다는 String을 반환하는 함수, solution을 완성하세요. seoul에 Kim은 오직 한 번만 나타나며 잘못된 값이 입력되는 경우는 없습니다. 제 programmers.co.kr 문제 설명 주어진 문자열 배열에서 "Kim"이 몇번째에 있는지 찾는 문제 문제 풀이 소스코드 : C++ #include #include #include #include using namespace std; string solution(vector seoul) { auto itr = find(seoul.begin(), seoul.end(), "Kim"); int idx =..
WONILLISM
'Algorithm' 카테고리의 글 목록 (3 Page)