[프로그래머스] 문자열 다루기 기본
문자열 다루기 기본 문제라는 문제 이름으로 쉬운 문제라고 생각하고 풀었다. 아스키코드 상으로 알파벳 소문자 또는 대문자가 문자열 안에 존재하면 answer 상태를 false로 바꿔주고 리턴까지 시켰다. 하지만 주어진 테스트 케이스를 통과하였지만 자꾸 테스트 5,6번에서 막혔고 이유가 뭔지 골똘히 생각하던 중에 그 이유를 찾을 수 있었다.
문자열 다루기 기본 문제라는 문제 이름으로 쉬운 문제라고 생각하고 풀었다. 아스키코드 상으로 알파벳 소문자 또는 대문자가 문자열 안에 존재하면 answer 상태를 false로 바꿔주고 리턴까지 시켰다. 하지만 주어진 테스트 케이스를 통과하였지만 자꾸 테스트 5,6번에서 막혔고 이유가 뭔지 골똘히 생각하던 중에 그 이유를 찾을 수 있었다.
문자열의 길이는(s는) 1~5이고, s 맨 앞에는 부호(+,-)
가 올 수 있다고 한다.
부호에 따른 처리가 필요한 것인지 궁금했지만 일단 매개변수로 받은 문자열 s를 정수로 casting 해보았다.
마크다운은 간단한 인라인 코드를 작성할 때 백틱을 이용한다.
1 | `(넣을 내용)` |
근데 잘 쓰고 있던 중 어떤 md 파일은 먹히는데 새로 작성하는 파일에선 되지 않는 현상을 발견했다.
배열 array
를 i번째 부터 j번째 까지 자르고 정렬했을 때, k번째에 있는 수를 구한다.
commands
배열의 각 행, 즉 i,j,k
를 잘 뽑아내고 정렬 후 k번째 수를 answer
배열에 넣기만 하면 된다.
이중 for문을 잘 이해하라!
num이 짝수면 Even 홀수면 Odd
서울에서 김서방 찾기… 금방 풀었다라고 생각했고 테스트 통과까지 했다.
하지만 정확성 테스트에서 털려버렸고 이유는 질문하기에서 금방 찾을 수 있었다.
직사각형을 만드는데 필요한 4개의 점 중 3개만 주어질 때, 주어지는 3개의 점들은 모두 각 x축 y축에 평행 하도록 하는 좌표만 주므로, 만약 [[1,4],[3,4],[3,10]]
이 주어졌을 때 중복 되는 배열의 원소 수는 소거한다. 그럼 중복 되지 않는 수가 나머지 한 점 이 된다.
그러므로 [1,10]
이 output으로 나와야 한다.
주어진 2차원 배열을 비정방형 행렬로 생각하여 풀어보자.
1 | x좌표 y좌표 |
배열의 크기가 4면 1부터 4까지 무조건 중복없이 숫자가 들어간다. arr = [4,2,3,1]
하지만 원소의 순서는 뒤죽박죽이 되어 있을 수 있다. 그러므로 java.util.Arrays
를 import 하고 매개변수로 들어오는 arr 배열을 sort 시켜준다.
그리고 arr의 index와 index 내부의 원소가 같은 지 판별하는 알고리즘을 짜도록 한다.
컴퓨터과학 수업에서 새로운 언어를 배울 때 지겹도록 짜본 코드…
하지만 간과하지 말자. 이런 간단한 것도 생각이 안날 수 있으니까.