Submission #529804

#TimeUsernameProblemLanguageResultExecution timeMemory
529804ammar2000Street Lamps (APIO19_street_lamps)C++17
40 / 100
104 ms20576 KiB
#include<bits/stdc++.h> #define ll long long #define pb push_back #define F first #define S second #define coy cout<<"YES\n" #define con cout<<"NO\n" #define co1 cout<<"-1\n" #define sc(x) scanf("%lld",&x) #define all(x) x.begin(),x.end() #define fast ios::sync_with_stdio(0);cin.tie(0);cout.tie(0); using namespace std; const int SI=3e5+7; ll INF=8e18+7; int dx[] = {1 , -1 , 0 , 0}; int dy[] = {0 , 0 , 1 , -1}; int MOD=1e9+7; ll n,q,las[SI],ans[SI]; string s,c[SI]; int main() { fast cin>>n>>q>>s; if (n<=100&&q<=100) { c[0]=s; for (int i=1;i<=q;i++) { c[i]=c[i-1]; string info; cin>>info; if (info=="toggle") { ll in; cin>>in; if (c[i][in-1]=='1') c[i][in-1]='0'; else c[i][in-1]='1'; continue ; } else { ll a,b; cin>>a>>b; a--; b--; ll cou=0; for (int u=0;u<i;u++) { bool fl=0; for (int e=a;e<b;e++) if (c[u][e]=='0') fl=1; if (!fl) cou++; } cout <<cou <<"\n"; } } } else { s='*'+s; for (int i=1;i<=n;i++) if (s[i]=='1') las[i]=0; else las[i]=INF; for (int i=1;i<=q;i++) { string info; cin>>info; if (info=="toggle") { ll in; cin>>in; if (s[in]=='1') { ans[in]+=max(0ll,i-las[in]); s[in]='0'; } else { las[in]=i; s[in]='1'; } } else { ll in,qw; cin>>in>>qw; ll cou=ans[in]; if (s[in]=='1') cou+=i-las[in]; cout << cou<<"\n"; } } } // use scanf not cin return 0; }

Compilation message (stderr)

street_lamps.cpp: In function 'int main()':
street_lamps.cpp:51:20: warning: this 'for' clause does not guard... [-Wmisleading-indentation]
   51 |                    for (int e=a;e<b;e++)
      |                    ^~~
street_lamps.cpp:54:21: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'for'
   54 |                     if (!fl) cou++;
      |                     ^~
street_lamps.cpp:63:8: warning: this 'for' clause does not guard... [-Wmisleading-indentation]
   63 |        for (int i=1;i<=n;i++)
      |        ^~~
street_lamps.cpp:67:9: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'for'
   67 |         for (int i=1;i<=q;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...