안녕하세요. 오늘은 별의 색깔을 알아볼 거예요.
https://www.acmicpc.net/problem/30676
여러가지 방법이 있지만 가장 깔끔한 방법은
1. 색깔을 나누는 기준을 모두 배열에 담고
2. upper_bound로 특정한 값이 속하는 범위를 알아낸 다음에
3. 그에 맞는 색깔을 출력한다
입니다.
#include <iostream>
#include <string>
#include <algorithm>
using namespace std;
int main(void)
{
ios_base::sync_with_stdio(false); cin.tie(NULL);
int arr[7] = { 425,450,495,570,590,620,781 }, N;
string s[7] = { "Violet","Indigo","Blue","Green","Yellow","Orange","Red" };
cin >> N;
cout << s[upper_bound(arr, arr + 7, N) - arr];
}
감사합니다.