Submission #376138

#TimeUsernameProblemLanguageResultExecution timeMemory
376138daniel920712Lamps (JOI19_lamps)C++14
0 / 100
1103 ms81644 KiB
#include <iostream> #include <stdio.h> #include <stdlib.h> using namespace std; char a[1000005]; char b[1000005]; bool have[1000005]={0}; int DP[1000005],N; int F(int here) { int i,tt; if(here==N) return 0; if(have[here]) return DP[here]; have[here]=1; if(a[here]==b[here]) DP[here]=F(here+1); else DP[here]=F(here+1)+1; tt=0; for(i=here;i<N;i++) { if(b[i]=='1'&&(i==here||b[i-1]=='0')) tt++; DP[here]=min(DP[here],F(i+1)+tt+1); } tt=0; for(i=here;i<N;i++) { if(b[i]=='0'&&(i==here||b[i-1]=='1')) tt++; DP[here]=min(DP[here],F(i+1)+tt+1); } for(i=here;i<N;i++) { if(a[i]!=b[i]) DP[here]=min(DP[here],F(i+1)+1); else break; } return DP[here]; } int main() { int M,ans=0,i; scanf("%d",&N); scanf("%s %s",a,b); printf("%d\n",F(0)); return 0; }

Compilation message (stderr)

lamp.cpp: In function 'int main()':
lamp.cpp:40:9: warning: unused variable 'M' [-Wunused-variable]
   40 |     int M,ans=0,i;
      |         ^
lamp.cpp:40:11: warning: unused variable 'ans' [-Wunused-variable]
   40 |     int M,ans=0,i;
      |           ^~~
lamp.cpp:40:17: warning: unused variable 'i' [-Wunused-variable]
   40 |     int M,ans=0,i;
      |                 ^
lamp.cpp:41:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   41 |     scanf("%d",&N);
      |     ~~~~~^~~~~~~~~
lamp.cpp:42:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   42 |     scanf("%s %s",a,b);
      |     ~~~~~^~~~~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...