結果
問題 | No.653 E869120 and Lucky Numbers |
ユーザー |
![]() |
提出日時 | 2018-02-27 23:49:11 |
言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 2 ms / 2,000 ms |
コード長 | 2,915 bytes |
コンパイル時間 | 855 ms |
コンパイル使用メモリ | 102,348 KB |
実行使用メモリ | 6,948 KB |
最終ジャッジ日時 | 2024-09-13 18:18:29 |
合計ジャッジ時間 | 1,849 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 31 |
ソースコード
#include <fstream>#include <iostream>#include <algorithm>#include <stdio.h>#include <stdlib.h>#include <string.h>#include <string>#include <sstream>#include <map>#include <set>#include <vector>#include <stack>#include <cmath>#include <queue>#include <random>using namespace std;#define INT_MAX_VALUE 2147483647#define LONG_LONG_MAX_VALUE 9223372036854775807#define ll long longtemplate <class T>T mymax(T a,T b){if(a>=b) return a;return b;}template <class T>T mymin(T a,T b){if(a<=b) return a;return b;}ll gcd(ll a, ll b){if(a<b){swap(a,b);}while(b){ll r = a%b;a=b;b=r;}return a;}ll lcm(ll a, ll b){return (a*b)/gcd(a,b);}struct XX{ll a;int b;int j;int i;};class xxGreater {public:bool operator()(const XX& riLeft, const XX& riRight) const {//第2条件if((riLeft.a) == (riRight.a)){return riLeft.i < riRight.i;//<:昇順(小さいものから順番)、>:降順(大きいものから順番)//プライオリティキューの場合は > で、top()すると値の小さいものがとれる}//第1条件return (riLeft.a) < (riRight.a);}};//map<long long,long long> prime_f(long long n){// map<long long,long long>res;// for(int i=2;i*i<=n;i++){// while(n%i==0){// ++res[i];// n/=i;// }// }// if(n!=1)res[n]=1;// return res;//}int main(int argc, const char * argv[]){//scanf("%s",S);//scanf("%d",&N);//scanf("%lld %lld",&target1,&target2);//sscanf(tmp.c_str(),"%dd%d%d",&time[i], &dice[i], &z[i]);//getline(cin, target);//ifstream ifs( "1_06.txt" );//テスト用//ifs >> a;//ここから//入力高速化ios::sync_with_stdio(false);cin.tie(0);string P;cin >> P;int keta=0;int zero=0;for(int i=0;i<P.size()-1;i++){int tmp=*P.substr(P.size()-1-i,1).c_str()-'0';if(tmp==2+keta || tmp==3+keta || tmp==4+keta){keta=1;}else if((tmp==7+keta || tmp==6+keta) && keta==1){zero=1;keta=-100;}else if((tmp==7 || tmp==6)&& zero==1){}else{cout << "No" << endl;return 0;}}int tmp=*P.substr(0,1).c_str()-'0';if(tmp==1){cout << "Yes" << endl;return 0;}else if((tmp==7+keta || tmp==6+keta) && keta==1){cout << "Yes" << endl;return 0;}else if((tmp==7 || tmp==6)&& zero==1){cout << "Yes" << endl;return 0;}else{cout << "No" << endl;return 0;}//ここまで//cout << "ans" << endl;改行含む//printf("%.0f\n",ans);//小数点以下表示なし//printf("%.7f\n",p);return 0;}