Algorithm/문자열
-
[프로그래머스] 신규 아이디 추천Algorithm/문자열 2021. 11. 29. 16:23
- 카카오 2021 코딩테스트 기출문제 1번, 정답률이 57퍼정도였던 문제이다. 꼭 맞춰주어야 하는 문제이다 - 먼저, 대문자를 소문자로 변환한다. 이 과정에서는 isupper, tolower 함수를 사용한다. - 다음으로, islower, isdigit을 통해 소문자, 숫자, 빼기, 밑줄, 마침표만을 추가한다. - 세 번째로, 마침표가 2번 이상 연속된 부분을 제거하는데, 이는 new_id에 하나씩 push를 하면서 new_id의 맨 마지막 글자가 '.'이고, 삽입할 글자도 '.'이라면 skip하는 식으로 구현을 한다. - 다음으로, 끝 마침표를 제거한다. 처음 마침표는 이미 전 단계에서 제거되었으므로 따로 구현할 필요가 없다. - 5단계도 쉽게 진행하면 되고, 6단계는 substr(인덱스, 추출할 문..
-
백준 5430 ACAlgorithm/문자열 2021. 11. 22. 16:01
https://www.acmicpc.net/problem/5430 5430번: AC 각 테스트 케이스에 대해서, 입력으로 주어진 정수 배열에 함수를 수행한 결과를 출력한다. 만약, 에러가 발생한 경우에는 error를 출력한다. www.acmicpc.net - 문자열 파싱 + 자료구조 deque 사용 문제이다.(vector를 사용해도 되긴 하다) - 1차로 입력이 좀 까다롭고, 2차로 R연산 시 배열을 뒤집지 않고 해결할 방법을 찾아야 한다.(만약 배열을 직접 뒤집을 시 시간초과가 나게 된다.) - 필자는 배열 형태를 입력받아서, erase 메서드로 맨 앞, 맨 뒤 대괄호를 없애고 추가로 쉼표를 기준으로 파싱을 한 뒤 정수로 변환하여 덱에 push를 했다. - reverse 상태 여부를 boolean변수로..
-
[프로그래머스] 문자열 압축Algorithm/문자열 2021. 9. 20. 16:06
문제 링크 코딩테스트 연습 - 문자열 압축 데이터 처리 전문가가 되고 싶은 "어피치"는 문자열을 압축하는 방법에 대해 공부를 하고 있습니다. 최근에 대량의 데이터 처리를 위한 간단한 비손실 압축 방법에 대해 공부를 하고 있는데, 문 programmers.co.kr - s의 길이는 1000 이하이다. 즉 O(n^2) 정도의 알고리즘으로 풀 수 있다. - 문자열을 활용한 단순 구현 문제인 것 같다. 카카오 코테 1번인가 2번이었던걸로 기억한다. function solution(s) { if(s.length === 1) return 1 let answerArr = [] for(let i = 1; i 1? compressedString + cnt + tempSubStr : compressedString + te..
-
[Codility - Iteration] BinaryGapAlgorithm/문자열 2021. 9. 16. 09:58
https://app.codility.com/programmers/lessons/1-iterations/binary_gap/ BinaryGap coding task - Learn to Code - Codility Find longest sequence of zeros in binary representation of an integer. app.codility.com - 주어진 수를 이진수로 변환한다. 이 과정에서 배열의 unshift를 사용 해 준다. parseInt 메서드를 통해 소숫점 이하는 버려주어야 오류가 나질 않는다. (자바스크립트의 number형 자료형은 64비트 부동소수점을 쓰기 때문) - 그 후, 배열의 값을 하나씩 순회하면서 1을 만났을 때, 0을 만났을 때 각각 flag에 따라서 처리..