Advertisement
Patrickmeme

D - Flip Cards

Jun 14th, 2023
570
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.65 KB | None | 0 0
  1. #include <iostream>
  2. using namespace std;
  3.  
  4. long long v[200001][3];
  5. int a[200001],b[200001];
  6.  
  7. #define MOD 998244353
  8.  
  9. int main()
  10. {
  11.     int n,i;
  12.     cin>>n;
  13.     for(i=0;i<n;i++)
  14.         cin>>a[i]>>b[i];
  15.     v[0][1]=v[0][2]=1;
  16.     for(i=1;i<n;i++){
  17.         if(a[i-1]!=a[i]){
  18.             v[i][1]=(v[i][1]+v[i-1][1])%MOD;
  19.         }
  20.         if(a[i-1]!=b[i]){
  21.             v[i][2]=(v[i][2]+v[i-1][1])%MOD;
  22.         }
  23.         if(b[i-1]!=b[i]){
  24.             v[i][2]=(v[i][2]+v[i-1][2])%MOD;
  25.         }
  26.         if(b[i-1]!=a[i]){
  27.             v[i][1]=(v[i][1]+v[i-1][2])%MOD;
  28.         }
  29.  
  30.     }
  31.     cout<<(v[n-1][1]+v[n-1][2])%MOD;
  32.     return 0;
  33. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement