본문 바로가기

자바35

프로그래머스 Lv.0 세 개의 구분자 프로그래머스 Lv.0 세 개의 구분자 임의의 문자열이 주어졌을 때, "a", "b", "c"를 구분자로 사용해 문자열을 나눈다. 세 개의 구분자를 사용해 나눠진 문자열을 순서대로 저장한 배열을 return하라. 구분자 사이에 다른 문자가 없을 경우에는 아무것도 저장하지 않고, ["EMPTY"]를 return한다. ** 풀이 방법 먼저 a, b, c를 모두 공백으로 바꿔준다. myStr = myStr.replace("a"," "); myStr = myStr.replace("b"," "); myStr = myStr.replace("c"," "); String배열에 myStr을 공백으로 나눈 문자열들을 저장한다. String[] list = myStr.split(" "); String배열의 ""를 제외한 문자.. 2023. 7. 26.
프로그래머스 Lv.0 공 던지기 프로그래머스 Lv.0 공 던지기 공 던지기 게임을 한다. 공은 1번부터 던지며 오른쪽으로 한 명을 건너뛰고 그 다음 사람에게만 던질 수 있다. 친구들의 번호가 있는 정수 배열 numbers와 정수 k가 주어질 때, k번째로 공을 던지는 사람의 번호는 무엇인지 return하라. numbers의 첫 번째와 마지막 번호는 실제로 바로 옆에 있다. numbers는 1부터 시작하며 번호는 순서대로 올라간다. numbers k result [1, 2, 3, 4] 2 3 [1, 2, 3, 4, 5, 6] 5 3 [1, 2, 3] 3 2 ** 풀이 방법 1. numbers[0]부터 공을 던지기 시작한다. 1~k번 공을 던지고 chk를 1씩 증가시켜 chk가 k번째가 되면 반복문을 벗어난다. 2. 인덱스를 2씩 증가시킨.. 2023. 7. 26.
프로그래머스 Lv.0 문자열 겹쳐쓰기 프로그래머스 Lv.0 문자열 겹쳐쓰기 문자열 my_string, overwrite_string과 정수 s가 주어진다. my_string의 인덱스 s부터 overwrite_string의 길이만큼 바꾼 문자열을 return하라. my_string overwrite_string s result "He11oWor1d" "lloWorl" 2 "HelloWorld" "Program29b8UYP" "merS123" 7 "ProgrammersS123" ** 풀이 방법 substring을 사용해 my_string의 0번 부터 s-1인덱스까지 담는다. answer += my_string.substring(0, s); 그 다음 overwrite_string을 담는다. answer += overwrite_string; my_.. 2023. 7. 25.
프로그래머스 Lv.1 가장 가까운 같은 글자 프로그래머스 Lv.1 가장 가까운 같은 글자 문자열 s가 주어졌을 때, s의 각 문자가 같은 것이 2개 이상이면 자신과 가장 가까운 곳에 있는 같은 글자의 위치가 자신과 얼마나 차이가 나는지 표현한다. 같은 문자가 없다면 -1로 표현한다. s result "banana" [-1, -1, -1, 2, 2, 2] "foobar" [-1, -1, 1, -1, -1, -1] ** 풀이 방법 s가 banana일 때, 이런 과정으로 풀이된다. b -1 ba -1 ban -1 bana a가 인덱스 1에도 있으므로 현재 a의 위치인 3-1=2로 표현 banan n가 인덱스 2에도 있으므로 현재 n의 위치인 4-2=2로 표현 banana 현재 a의 위치-가장 가까운 위치의 a 5-3=2로 표현 문자열 s를 문자 하나씩 .. 2023. 7. 25.
반응형