Submission #1036481

#TimeUsernameProblemLanguageResultExecution timeMemory
1036481VMaksimoski008Linear Garden (IOI08_linear_garden)C++17
24 / 100
1582 ms5220 KiB
#include <bits/stdc++.h> #define all(x) x.begin(), x.end() #define rall(x) x.rbegin(), x.rend() //#define int long long using namespace std; using ll = long long; using pii = pair<int, int>; using pll = pair<ll, ll>; const int mod = 1e9 + 7; const int LOG = 20; const int maxn = 1e5 + 5; ll n, m, ans = 0; string s; signed main() { cin >> n >> m >> s; for(int i=0; i<n; i++) s[i] = (s[i] == 'P' ? '1' : '0'); vector<string> vec; for(int s=0; s<(1<<n); s++) { string t = ""; for(int i=0; i<n; i++) { if(s & (1 << i)) t += '1'; else t += '0'; } bool ok = 1; for(int i=0; i<n&&ok; i++) { int cnt = 0; for(int j=i; j<n&&ok; j++) { if(t[j] == '1') cnt++; else cnt--; if(cnt > 2 || cnt < -2) ok = 0; } } if(ok) vec.push_back(t); } sort(vec.begin(), vec.end()); for(int i=0; i<vec.size(); i++) { if(vec[i] == s) { cout << (i + 1) % m << '\n'; return 0; } } return 0; }

Compilation message (stderr)

linear_garden.cpp: In function 'int main()':
linear_garden.cpp:48:19: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::__cxx11::basic_string<char> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   48 |     for(int i=0; i<vec.size(); i++) {
      |                  ~^~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...