programmers.co.kr/learn/courses/30/lessons/67256
간단한? 구현문제
핸드폰 자판 위치 나타낼때 row표시에서 오류가 났다. 주의하자
#include <string>
#include <vector>
#include <math.h>
#include <iostream>
using namespace std;
string solution(vector<int> numbers, string hand) {
string answer = "";
int lr=3, lc = 0;
int rr=3, rc = 2;
int gr, gc;
for(int i=0; i<numbers.size(); i++){
int num = numbers[i];
if(num%3 == 1){
answer += "L";
lr = (num-1)/3;
lc = (num-1)%3;
}else if(num>0 && num%3 == 0){
answer += "R";
rr = (num-1)/3;
rc = (num-1)%3;
}else{
if(num == 0){
gr = 3, gc=1;
}else{
gr = (num-1)/3;
gc = (num-1)%3;
}
int ld = abs(lr-gr) + abs(lc-gc);
int rd = abs(rr-gr) + abs(rc-gc);
if(ld<rd){
answer += "L";
lc = gc, lr=gr;
}else if(ld>rd){
answer += "R";
rc = gc, rr = gr;
}else {
if(hand == "left"){
answer += "L";
lc = gc, lr=gr;
}else{
answer += "R";
rc = gc, rr = gr;
}
}
}
}
return answer;
}
'알고리즘 문제풀이 > 프로그래머스' 카테고리의 다른 글
[프로그래머스 2019 KAKAO BLIND RECRUITMENT] 오픈채팅방 (0) | 2021.02.21 |
---|---|
[프로그래머스 2020 KAKAO BLIND RECRUITMENT] 문자열 압축 (1) | 2021.02.12 |
[프로그래머스 2019 카카오 개발자 겨울 인턴십] 호텔 방 배정 (0) | 2021.01.20 |
[프로그래머스 2019 카카오 개발자 겨울 인턴십] 불량 사용자 (0) | 2021.01.19 |
[프로그래머스 2019 카카오 개발자 겨울 인턴쉽] 튜플 (0) | 2021.01.19 |
댓글