Submission #618043

# Submission time Handle Problem Language Result Execution time Memory
618043 2022-08-01T20:06:03 Z czhang2718 HicCup (FXCUP4_hiccup) C++17
24 / 100
25 ms 6284 KB
// #include "hiccup.h"
using namespace std;
#include "bits/stdc++.h"

bool check(string s){
	int ps=0;
	for(char c:s){
		if(c=='H') ps++;
		else ps--;
		if(ps<0) return 0;
	}
	return ps==0;
}

int HicCup(std::string S) {
	string t="";
	for(char c:S) if(c!='!') t+=c;
	if(!check(t)) return -1;
	t="";
	for(char c:S) if(c!='H') t+=c;
	int exc=0, c=0;
	for(int i=0; i<S.size(); i++){
		if(S[i]=='!' && (!i || S[i-1]=='H')) return -1;
	}
	int ans=1e9;
	for(int i=t.size()-1; i>=0; i--){
		(t[i]=='!'?exc:c)++;
		if(t[i]=='C') ans=min(ans, exc/c);
	}
	assert(ans!=1e9);
	return ans;
}
 
// int main(){
// 	string s;
// 	cin >> s;
// 	cout << HicCup(s);
// }

Compilation message

hiccup.cpp: In function 'int HicCup(std::string)':
hiccup.cpp:22:16: warning: comparison of integer expressions of different signedness: 'int' and 'std::__cxx11::basic_string<char>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   22 |  for(int i=0; i<S.size(); i++){
      |               ~^~~~~~~~~
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 0 ms 212 KB Output is correct
4 Correct 2 ms 468 KB Output is correct
5 Correct 25 ms 5396 KB Output is correct
6 Correct 11 ms 5312 KB Output is correct
7 Correct 12 ms 5276 KB Output is correct
8 Correct 25 ms 5284 KB Output is correct
9 Correct 25 ms 5300 KB Output is correct
10 Correct 11 ms 5248 KB Output is correct
11 Correct 0 ms 212 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 0 ms 212 KB Output is correct
2 Correct 0 ms 212 KB Output is correct
3 Correct 0 ms 212 KB Output is correct
4 Correct 2 ms 468 KB Output is correct
5 Correct 25 ms 5396 KB Output is correct
6 Correct 11 ms 5312 KB Output is correct
7 Correct 12 ms 5276 KB Output is correct
8 Correct 25 ms 5284 KB Output is correct
9 Correct 25 ms 5300 KB Output is correct
10 Correct 11 ms 5248 KB Output is correct
11 Correct 0 ms 212 KB Output is correct
12 Correct 13 ms 4876 KB Output is correct
13 Correct 9 ms 3684 KB Output is correct
14 Correct 6 ms 3156 KB Output is correct
15 Correct 1 ms 212 KB Output is correct
16 Correct 12 ms 5248 KB Output is correct
17 Correct 0 ms 212 KB Output is correct
18 Correct 0 ms 212 KB Output is correct
19 Correct 1 ms 516 KB Output is correct
20 Correct 15 ms 6284 KB Output is correct
21 Incorrect 15 ms 6280 KB Output isn't correct
22 Halted 0 ms 0 KB -