<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      [題解]2024 ICPC香港區域賽-LR String

      • Sources:K- LR String
      • Abstract:給定僅由LR構成的原字符串 S ( 1 ≤ ∣ S ∣ ≤ 5 × 1 0 5 ) S(1\le |S|\le5\times 10^5) S(1S5×105),其中L可刪除其左側字符,R可刪除其右側字符。給出 q ( 1 ≤ q ≤ 5 × 1 0 5 ) q(1\le q\le5\times 10^5) q(1q5×105)組詢問,每次詢問包含一個字符串 T ( 1 ≤ ∣ T i ∣ ≤ ∣ S ∣ ) T(1\le |T_i|\le |S|) T(1Ti?S),判斷 T T T是否經由 S S S修改得到。( ∑ ( ∣ S ∣ + q + ∣ T i ∣ ) ≤ 1 0 6 \sum(|S|+q+|T_i|)\le 10^6 (S+q+Ti?)106)
      • Keyword:字符串(簽到題)
      • Solution:注意到 S S S中,當L出現在開頭或R出現在末尾時,其將永遠無法刪除,因此當s.front()=='L'&&s.front()!=t.front()s.back()=='R'&&s.back()!=t.back()可直接判定無解。由于 T T T一定為 S S S刪除某些字符得到,因此問題轉換為判定 T T T是否為 S S S的子序列。注意到數據范圍非常大,需設計 O ( n ) O(n) O(n)的算法判斷子序列。
      • Code:
      #include<bits/stdc++.h>
      using namespace std;
      using ll=long long;
      #define int ll
      #define endl "\n"
      const int INF=__INT_MAX__;
      void solve(){
          string s;cin>>s;
          vector<int>nxt_l(s.size(),INF),nxt_r(s.size(),INF);//S中每個字符的下個L/R位置表
          int l=INF,r=INF;
          for(int i=s.size()-1;i>=0;i--){//倒序遍歷S進行預處理
              nxt_l[i]=l,nxt_r[i]=r;
              if(s[i]=='L') l=i;
              else r=i;
          }
          int q;cin>>q;
          while(q--){
              string t;cin>>t;
              bool ok=1;
              if ((s[0]=='L'&&s[0]!=t[0])||(s[s.size()-1]=='R'&&t[t.size()-1]!=s[s.size()-1])) {//2個特例
                  cout<<"NO"<<'\n';
                  continue;
              }
              int idx=(t[0]=='L')?l:r;//預處理后l/r即為S中首個L/R的位置
              if (idx>=s.size()) {
                  cout<<"NO"<<'\n';
                  continue;
              }
              for (int i=1;i<t.size();i++) {
                  idx=(t[i]=='L')?nxt_l[idx]:nxt_r[idx];
                  if (idx>=s.size()) {
                      ok=0;
                      break;
                  }
              }
              if(ok) cout<<"YES"<<'\n';
              else cout<<"NO"<<'\n';
          }
      }
      signed main(){
          ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
          int t;cin>>t;
          while(t--) solve();
          return 0;
      }
      
      posted @ 2025-02-11 23:43  椰蘿Yerosius  閱讀(196)  評論(0)    收藏  舉報  來源
      主站蜘蛛池模板: 国内在线视频一区二区三区| 思思热在线视频精品| 色又黄又爽18禁免费视频| 国产午夜精品福利免费不| 无码乱人伦一区二区亚洲一| 亚洲av区一区二区三区| 天堂V亚洲国产V第一次| 毛片大全真人在线| 色天使亚洲综合一区二区| 欧美成人午夜精品免费福利| 人妻无码| 欧美性猛交xxxx黑人猛交| 欧美性色黄大片www喷水| 野花韩国高清电影| 欧美午夜成人片在线观看| 国产在线自拍一区二区三区| 夜夜添狠狠添高潮出水| 欧美色欧美亚洲高清在线观看| 国内精品久久久久久久97牛牛| 日韩熟女乱综合一区二区| 国产精品中文字幕在线| 99久久婷婷国产综合精品青草漫画 | 伊人久久大香线蕉av色婷婷色| 婷婷99视频精品全部在线观看| 亚洲色欲色欲www| 亚洲大尺度一区二区av| 国产福利社区一区二区| 五月天天天综合精品无码| 懂色AV| 色噜噜一区二区三区| 成人欧美一区二区三区在线观看| 香蕉影院在线观看| 激情视频乱一区二区三区| 少妇办公室好紧好爽再浪一点| 国内精品久久久久影院蜜芽| 国产毛片精品一区二区色 | 在线a级毛片无码免费真人| 人人澡人摸人人添| 色综合国产一区二区三区| 久久这里只有精品免费首页 | 麻豆一区二区三区香蕉视频|