전체 글
-
-
가장 가까운 같은 글자(c++)코딩테스트/프로그래머스 2024. 1. 11. 22:04
입력 : 문자열 s ( 1 ≤ 길이 ≤ 10,000, 소문자 ) sol 1. 글자 위치를 표시하는 벡터 v 만들기 (a ~ z) vector v('z' - 'a' + 1, -1); 'z' : 122 'a' : 97 알파벳 숫자는 총 26개, 122 - 97 = 25 → 1 추가 2. s 알파벳 하나씩 확인하며 v값, answer값 작성 고민 map을 사용한다면? vector map 벡터의 index로 값을 접근하는 시간복잡도 : O(1) 현재 풀이로는 s의 길이만큼 for문이 돌아감 → 시간복잡도 : O(s의 길이) = O(n) 공간복잡도 : s의 길이(answer) + 26(알파벳 개수) = O(n + 26) = O(n) map 참조 : O(logn), 삽입 : O(logn) for문 내부에서 map ..
-
합성수 찾기(c++)코딩테스트/프로그래머스 2024. 1. 11. 21:25
입력 : 1 ≤ n ≤ 100 인 정수 합성수 : 약수의 개수가 세 개 이상인 수 10 이하 합성수 4 : 약수 1, 2, 4 6 : 약수 1, 2, 3, 6 sol 1 & 소수를 제외한 수 = 합성수 1 ~ n 내의 값 중 소수 구하기 (for) 소수 여부 확인 (for) ≫ O(n^2) 고민 solution 함수 내부에 2중 for문 만들기 vs 소수 구하는 함수 따로 빼서 호출하기 shin0112/programmers_cpp: programmers' coding test solutions (github.com) 출처 : 프로그래머스 코딩 테스트 연습 - 합성수 찾기 https://school.programmers.co.kr/learn/courses/30/lessons/120846
-
프로그래머스 저작권코딩테스트/프로그래머스 2024. 1. 11. 16:36
프로그래머스의 문제를 외부에 게시할 수 있나요? – 프로그래머스 (zendesk.com) 코딩 테스트 연습 문제 코딩테스트 연습에 공개된 문제는 (주)그렙이 저작권을 가지고 있습니다. (지문 하단에 별도 저작권 표시 문제 제외) 코딩테스트 연습 문제의 지문, 테스트케이스, 풀이 등과 같은 정보는 비상업적, 비영리적 용도로 게시할 수 있습니다. 다만 문제의 지문, 풀이 등과 같은 정보를 단순히 게시하는 것을 넘어, 이를 바탕으로 문제를 풀고 채점이 가능하도록 하는 등의 방식으로 활용하는 것은 제한됩니다. ※ 2020 KAKAO BLIND RECRUITMENT, Summer/Winter Coding 등의 문제는 기업 코딩 테스트에 나온 문제이나, 코딩테스트 연습에 공개된 문제이기 때문에 마찬가지로 비상업적,..