본문 바로가기

728x90

문자열

[백준] 1013 Contact / 자바(Java) 문제 https://www.acmicpc.net/problem/1013 1013번: Contact 입력의 첫 줄에는 테스트 케이스의 개수 T가 주어진다. 그 다음 줄부터 각각의 테스트 케이스에 대해 전파를 표현하는, { 0, 1 }만으로 이루어진 문자열이 공백 없이 주어진다. 문자열 길이는 (1 ≤ www.acmicpc.net 해설 문제에서부터 정규표현식을 사용해줌으로써 자바의 String 내부에 있는 정규표현식을 사용해 쉽게 해결할 수 있었습니다. 유사한 문제에 대한 접근법으로 정규표현식을 사용할 수 있음을 알아 학습하는 계기가 되었습니다. 주의점 정규 표현식을 써보자 코드 import java.io.BufferedReader; import java.io.IOException; import java.i.. 더보기
[프로그래머스] 숫자 짝궁 / 자바(Java) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/131128 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해설 주어진 두 정수 X, Y에서 공통된 임의의 정수들을 이용해 가장 큰 수를 만드는 문제입니다. 각자 정수의 개수들만 구해주고 중복되는 정수를 9부터 0까지 역으로 나열하면 가장 큰 수를 만들어줄 수 있습니다. 1. X, Y에 각각 대응되는 배열 xarr, yarr를 만들어 각자 가지고있는 정수들의 개수를 구합니다. 2. StringBuilder를 사용해 9부터 0까지 역으로 나아가며 중.. 더보기
[프로그래머스] 문자열 나누기 / 자바(Java) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/140108 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해설 문자열 s를 왼쪽에서 오른쪽으로 진행합니다 1. 첫 글자를 읽고 해당 글자를 'cur'이라고 합니다 2. 이후로 문자열을 계속 읽어나가며 'cur'과 'cur'이 아닌 문자의 수가 같아지는 순간 문자열을 분리합니다. 3. 더이상 읽을 글자가 없다면 지금까지 읽은 문자열을 따로 분리하고 종료합니다. 이 3가지 규칙을 준수하기 위해 1번 규칙을 위해 문자열을 훑는 for문을 만들어 분리될.. 더보기
[프로그래머스] 둘만의 암호 / 자바(Java) 문제 https://school.programmers.co.kr/learn/courses/30/lessons/155652# 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해설 3가지 요소, 문자열 s, skip과 자연수 index가 존재합니다 1. 문자열 s의 각 문자를 index만큼 뒤의 알파벳으로 바꿔줍니다 (s ="abd", index = 2 이라면 "cdf") 2. 이때 알파벳이 'z'를 넘어간다면 'a'로 돌아가 그 다음 알파벳으로 바꿉니다 (s = "xyz", index = 2 이라면 "zab") 3. 또한 skip에 있는 알파벳은 제외하고 건.. 더보기

728x90