Submission #501768


Source Code Expand

#include <bits/stdc++.h>
#define FOR(i,a,b) for(int i=(a);i<(b);i++)
#define REP(i,b) FOR(i,0,b)
#define PB push_back
#define BE(c) c.begin(),c.end()
#define F first
#define S second
using namespace std;
typedef long long LL;
typedef long double ld;
typedef int ut;
typedef pair<ut,ut> pr;
typedef vector<ut> VI;
typedef vector<pr> Vpr;
const ut INF=1<<30;
const LL p=7+1e+9;
const int SIZE=5+1e+3;
using namespace std;
string s;
bool checked[SIZE][2];
int DP[SIZE][2];
int solve(int x,bool isUp){
	if(x==s.size()){
		if(isUp) return -INF;
		return 0;
	} 
	if(checked[x][isUp]) return DP[x][isUp];
	checked[x][isUp]=true;
	if(s[x]=='0'){
		if(isUp) DP[x][isUp]=solve(x+1,true);
		else DP[x][isUp]=max(solve(x+1,true),solve(x+1,false)+1);
	} 
	else if(s[x]=='9'){
		if(isUp) DP[x][isUp]=max(solve(x+1,true)+1,solve(x+1,false));
		else DP[x][isUp]=solve(x+1,false);
	}
	else{
		DP[x][isUp]=max(solve(x+1,true),solve(x+1,false));
	}
	return DP[x][isUp];
}
int main() {
	cin >> s;
	cout << max(solve(0,0),solve(0,1)) << endl;
	// your code goes here
	return 0;
}

Submission Info

Submission Time
Task F - レシート
User anct
Language C++11 (GCC 4.9.2)
Score 100
Code Size 1104 Byte
Status AC
Exec Time 26 ms
Memory 928 KiB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 100 / 100
Status
AC × 3
AC × 53
Set Name Test Cases
Sample 00-example1.txt, 00-example2.txt, 00-example3.txt
All 00-example1.txt, 00-example2.txt, 00-example3.txt, 01-hand01.txt, 01-hand02.txt, 01-hand03.txt, 01-hand04.txt, 01-hand05.txt, 01-hand06.txt, 01-hand07.txt, 01-hand08.txt, 01-hand09.txt, 01-hand10.txt, 01-hand11.txt, 01-hand12.txt, 01-hand13.txt, 01-hand14.txt, 01-hand15.txt, 01-hand16.txt, 01-hand17.txt, 01-hand18.txt, 01-hand19.txt, 01-hand20.txt, 10-randomA00.txt, 10-randomA01.txt, 10-randomA02.txt, 10-randomA03.txt, 10-randomA04.txt, 10-randomA05.txt, 10-randomA06.txt, 10-randomA07.txt, 10-randomA08.txt, 10-randomA09.txt, 20-randomB00.txt, 20-randomB01.txt, 20-randomB02.txt, 20-randomB03.txt, 20-randomB04.txt, 20-randomB05.txt, 20-randomB06.txt, 20-randomB07.txt, 20-randomB08.txt, 20-randomB09.txt, 20-randomB10.txt, 20-randomB11.txt, 20-randomB12.txt, 20-randomB13.txt, 20-randomB14.txt, 20-randomB15.txt, 20-randomB16.txt, 20-randomB17.txt, 20-randomB18.txt, 20-randomB19.txt
Case Name Status Exec Time Memory
00-example1.txt AC 26 ms 920 KiB
00-example2.txt AC 24 ms 844 KiB
00-example3.txt AC 23 ms 916 KiB
01-hand01.txt AC 24 ms 808 KiB
01-hand02.txt AC 24 ms 808 KiB
01-hand03.txt AC 24 ms 796 KiB
01-hand04.txt AC 24 ms 804 KiB
01-hand05.txt AC 24 ms 800 KiB
01-hand06.txt AC 24 ms 804 KiB
01-hand07.txt AC 24 ms 792 KiB
01-hand08.txt AC 24 ms 808 KiB
01-hand09.txt AC 24 ms 812 KiB
01-hand10.txt AC 24 ms 800 KiB
01-hand11.txt AC 24 ms 796 KiB
01-hand12.txt AC 26 ms 804 KiB
01-hand13.txt AC 26 ms 800 KiB
01-hand14.txt AC 26 ms 800 KiB
01-hand15.txt AC 26 ms 840 KiB
01-hand16.txt AC 26 ms 808 KiB
01-hand17.txt AC 25 ms 916 KiB
01-hand18.txt AC 24 ms 808 KiB
01-hand19.txt AC 24 ms 916 KiB
01-hand20.txt AC 26 ms 924 KiB
10-randomA00.txt AC 24 ms 804 KiB
10-randomA01.txt AC 25 ms 796 KiB
10-randomA02.txt AC 26 ms 924 KiB
10-randomA03.txt AC 23 ms 800 KiB
10-randomA04.txt AC 24 ms 796 KiB
10-randomA05.txt AC 25 ms 916 KiB
10-randomA06.txt AC 23 ms 924 KiB
10-randomA07.txt AC 24 ms 920 KiB
10-randomA08.txt AC 26 ms 788 KiB
10-randomA09.txt AC 26 ms 732 KiB
20-randomB00.txt AC 25 ms 808 KiB
20-randomB01.txt AC 25 ms 916 KiB
20-randomB02.txt AC 25 ms 724 KiB
20-randomB03.txt AC 23 ms 800 KiB
20-randomB04.txt AC 26 ms 796 KiB
20-randomB05.txt AC 25 ms 916 KiB
20-randomB06.txt AC 24 ms 804 KiB
20-randomB07.txt AC 25 ms 924 KiB
20-randomB08.txt AC 25 ms 924 KiB
20-randomB09.txt AC 26 ms 800 KiB
20-randomB10.txt AC 26 ms 808 KiB
20-randomB11.txt AC 25 ms 804 KiB
20-randomB12.txt AC 26 ms 800 KiB
20-randomB13.txt AC 24 ms 808 KiB
20-randomB14.txt AC 26 ms 800 KiB
20-randomB15.txt AC 26 ms 808 KiB
20-randomB16.txt AC 25 ms 916 KiB
20-randomB17.txt AC 26 ms 920 KiB
20-randomB18.txt AC 25 ms 804 KiB
20-randomB19.txt AC 25 ms 928 KiB