#define _USE_MATH_DEFINES //M_PI #include //std::cout, std::cin #include //std::string #include //std::vector #include //std::valarray 数値のみの一次配列 #include //std::sort #include //localtime_s #include //abs #include //abs, std::pow, sqrt, sin, cos, #include //std::ifstream #include //std::setprecision #include //std::random(C++11) #include //std::accumulate void Split_String(const std::string *str,const char key,std::vector &result) { std::string original = *str; std::string temp; while (!original.empty()) { if (original[0] == key) { if (!temp.empty()) { result.push_back(temp); temp.clear(); } } else { temp.push_back(original[0]); } original.erase(original.begin()); } if (!temp.empty()) { result.push_back(temp); } } int main(void) { //test用 //std::ifstream in("test.txt"); //std::cin.rdbuf(in.rdbuf()); std::string str1, str2; std::cin >> str1 >> str2; std::vector result1, result2; Split_String(&str1, '.', result1); Split_String(&str2, '.', result2); int i = 0; while (i<3 && std::stoi(result1[i]) == std::stoi(result2[i])) { i++; } if (i == 3 || std::stoi(result1[i]) > std::stoi(result2[i])) { std::cout << "YES" << std::endl; } else { std::cout << "NO" << std::endl; } }