결과에 Not jolly를 Not Jolly로 출력 한거 모르고 몇시간 낭비….
쉽다.
#include#include #include #include #include int main() { std::string buffer; int numbers, current, before; bool jolly; while (true) { jolly = true; std::getline(std::cin, buffer); if (!buffer.length()) break; std::istringstream iss(buffer); iss >> numbers; std::deque checkArr(numbers); // checkArr.insert(checkArr.begin(),checkArr.size(),false); //기본적으로 false인듯 iss >> before; for( int i = 1; i < numbers; ++i){ iss>>current; int gap = std::abs((float)before - current ); if(gap <= 0 || gap >= numbers|| checkArr[gap-1]){ jolly = false; //범위를 벗어나거나 중복이면 Not jolly break; } checkArr[gap-1] = true; before = current; } std::cout <<( jolly ? "Jolly":"Not jolly") << std::endl; } }