[프로그래머스] 시저 암호

아스키를 잘 다룬다면 쉬운 문제겠지만 잘 못다룬다면 어려운 문제일 수 있겠다. 문자열과 정수를 입력받아 정수 만큼 다음 문자로 밀어주는 (예를 들면 A가 2만큼 이동하면 C) 카이사르 암호 문제이다.

자세히 보기

[프로그래머스] 수박수박수박수박수박수?

입력 n이 1일 땐 “수” 출력, n이 2이면 “수박”, 3이면 “수박수” … index 초기값을 1로 초기화 하고 반복문을 통해 i가 증가 할때마다 홀수, 짝수 판별을 한다. 만약 홀수면 “수”, 짝수면 “박”을 answer 에 추가해가면서 n번 반복한다.

자세히 보기

[프로그래머스] 문자열 다루기 기본

문자열 다루기 기본 문제라는 문제 이름으로 쉬운 문제라고 생각하고 풀었다. 아스키코드 상으로 알파벳 소문자 또는 대문자가 문자열 안에 존재하면 answer 상태를 false로 바꿔주고 리턴까지 시켰다. 하지만 주어진 테스트 케이스를 통과하였지만 자꾸 테스트 5,6번에서 막혔고 이유가 뭔지 골똘히 생각하던 중에 그 이유를 찾을 수 있었다.

자세히 보기

[프로그래머스] K번째 수

배열 array를 i번째 부터 j번째 까지 자르고 정렬했을 때, k번째에 있는 수를 구한다.

commands 배열의 각 행, 즉 i,j,k를 잘 뽑아내고 정렬 후 k번째 수를 answer 배열에 넣기만 하면 된다.

자세히 보기

[프로그래머스] 나머지 한 점

직사각형을 만드는데 필요한 4개의 점 중 3개만 주어질 때, 주어지는 3개의 점들은 모두 각 x축 y축에 평행 하도록 하는 좌표만 주므로, 만약 [[1,4],[3,4],[3,10]] 이 주어졌을 때 중복 되는 배열의 원소 수는 소거한다. 그럼 중복 되지 않는 수가 나머지 한 점 이 된다.

그러므로 [1,10] 이 output으로 나와야 한다.

주어진 2차원 배열을 비정방형 행렬로 생각하여 풀어보자.

1
2
3
4
                     x좌표    y좌표
v = [[1, 4] [0][0] [0][1]
[3, 4] == [1][0] [1][1]
[3,10]] [2][0] [2][1]

자세히 보기