2023. 9. 20. 04:02, 알고리즘/프로그래머스
https://school.programmers.co.kr/learn/courses/30/lessons/120841
#include <string>
#include <vector>
using namespace std;
int solution(vector<int> dot) {
int answer = 0;
int x=dot[0];
int y=dot[1];
if(x>0 && y>0) return 1;
else if(x<0 && y>0) return 2;
else if(x<0 && y<0) return 3;
else return 4;
}
나는 위와같이 풀었는데,
다른사람의 풀이를 보니까, 삼항연산자를 엮어서 푼 풀이가 있는데 재미있어서 첨부해본다.
#include <string>
#include <vector>
using namespace std;
int solution(vector<int> dot) {
return dot[0] > 0 ? (dot[1] > 0 ? 1 : 4) : (dot[1] < 0 ? 3 : 2);
}
삼항 연산자 내부에 삼항연산자 두개를 엮어서 경우의 수들을 나타낼 수 있게 한 풀이인데, 바로 보자마자 이해가 되는건 아니겠지만 그래도 재미있게 해결해서 다음에 이런식의 풀이도 한번 생각해볼만 할것 같다.
'알고리즘 > 프로그래머스' 카테고리의 다른 글
Lv 0. 공 던지기 (0) | 2023.09.20 |
---|---|
Lv 0. 2차원으로 만들기 (0) | 2023.09.20 |
Lv 0. 구슬을 나누는 경우의 수 *다시 풀어보기* (0) | 2023.09.19 |
Lv 0. 가위 바위 보 (0) | 2023.09.19 |
Lv 0. 모스부호(1) - 키와 값을 엮은 자료구조가 필요하다면? unordered_map을 먼저 떠올리자. *다시 풀어보기* (0) | 2023.09.19 |
Comments, Trackbacks