Submission #149231

#TimeUsernameProblemLanguageResultExecution timeMemory
149231샌즈뼈 (#200)HicCup (FXCUP4_hiccup)C++17
24 / 100
20 ms3584 KiB
#include "hiccup.h" using namespace std; int arr[500011]={}; int sz; bool check(int k) { int i,v=0;; for (i=sz;i>=1;i--) { if (arr[i]+v<k) return 0; v+=arr[i]-k; } return 1; } int HicCup(std::string S) { int N = S.size(); int st=0,i,sum=0; for (char x:S) { if (x=='H') st++; if (x=='C') { if (!st--) return -1; sz++; } if (x=='!') { arr[sz]++; sum++;} } if (st) return -1; if (arr[0]) return -1; int l=0, r=sum/sz+1,mid; while(l+1<r) { mid=l+r>>1; if (check(mid)) l=mid; else r=mid; } return l; }

Compilation message (stderr)

hiccup.cpp: In function 'int HicCup(std::__cxx11::string)':
hiccup.cpp:37:14: warning: suggest parentheses around '+' inside '>>' [-Wparentheses]
         mid=l+r>>1;
             ~^~
hiccup.cpp:19:6: warning: unused variable 'N' [-Wunused-variable]
  int N = S.size();
      ^
hiccup.cpp:20:11: warning: unused variable 'i' [-Wunused-variable]
  int st=0,i,sum=0;
           ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...