这题主要的解决方法在于,4不能在第一位,三个4不能再一起,还有就是这些数字只能有1和4!
#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
string s;
int main()
{
int i;
cin>>s;
for(i=0; s[i]!='\0'; i++)
{
if(s[i]=='1'||s[i]=='4')
{
if(s[0]=='4')
{
printf("NO\n");
return 0;
}
else if(s[i]=='4'&&s[i+1]=='4'&&s[i+2]=='4')
{
printf("NO\n");
return 0;
}
}
else
{
printf("NO\n");
return 0;
}
}
printf("YES\n");
return 0;
}