<strike id="ca4is"><em id="ca4is"></em></strike>
  • <sup id="ca4is"></sup>
    • <s id="ca4is"><em id="ca4is"></em></s>
      <option id="ca4is"><cite id="ca4is"></cite></option>
    • 二維碼
      企資網

      掃一掃關注

      當前位置: 首頁 » 企業資訊 » 資訊 » 正文

      Tokitsukaze_and_Good_01

      放大字體  縮小字體 發布日期:2022-06-23 21:24:19    作者:葉麓菲    瀏覽次數:107
      導讀

      題目:codeforces/contest/1678/problem/B2題意:給定長度為偶數得一個01串,通過修改它得某些位置,使得它最終每個字符相同得連續段,得長度都為偶數。現在可以將字符上任意位置得字符修改為

      題目:
      codeforces/contest/1678/problem/B2

      題意:給定長度為偶數得一個01串,通過修改它得某些位置,使得它最終每個字符相同得連續段,得長度都為偶數。

      現在可以將字符上任意位置得字符修改為0或1.

      1、求最小需要改變得位置,才能滿足上述條件。

      2、同時,在保證最小改變數量得前提下,求最終能得到得最小得連續段個數。

      參考:
      codeforces/blog/entry/102631

      思路:

      要使每個字符相同得連續段,長度都為偶數,則要求每兩個相鄰得字符需要相等,即

      對于相鄰字符相同得位置,我們無需改動;對于相鄰字符不同得位置,我們考慮變為0,1對于最終得到得最小連續段得影響。我們用

      表示第個位置,以0/1結尾得最小得連續段,從前往后計算即可。

      #include<bits/stdc++.h> using namespace std;const int maxn = 200010;const int mod = 1e9 + 7;int n;char s[maxn];int dp[maxn][2];void solve() {scanf("%d", &n);scanf("%s", s);for (int i = 0; i <= n; ++i) {dp[i][0] = dp[i][1] = maxn;// 用maxn標記不可達 }int ans = 0;if (s[1] != s[0]) {++ans;dp[1][0] = dp[1][1] = 1;} else {int val = s[1] - '0';dp[1][val] = 1;}for (int i = 3; i < n; i += 2) {if (s[i-1] != s[i]) {++ans;// 對于需要改變得位置,它可以選擇取0和1做為結尾 dp[i][0] = min(dp[i-2][0], dp[i-2][1] + 1);dp[i][1] = min(dp[i-2][0] + 1, dp[i-2][1]);}else {int val = s[i] - '0';// 對于不能改變得位置,默認取它原來得0/1字符 dp[i][val] = min(dp[i-2][val], dp[i-2][1-val] + 1);}}printf("%d %d\n", ans, min(dp[n-1][0], dp[n-1][1]));}int main() {int t;scanf("%d", &t);while (t--) {solve();}return 0;}

       
      (文/葉麓菲)
      免責聲明
      本文僅代表作發布者:葉麓菲個人觀點,本站未對其內容進行核實,請讀者僅做參考,如若文中涉及有違公德、觸犯法律的內容,一經發現,立即刪除,需自行承擔相應責任。涉及到版權或其他問題,請及時聯系我們刪除處理郵件:weilaitui@qq.com。
       

      Copyright ? 2016 - 2025 - 企資網 48903.COM All Rights Reserved 粵公網安備 44030702000589號

      粵ICP備16078936號

      微信

      關注
      微信

      微信二維碼

      WAP二維碼

      客服

      聯系
      客服

      聯系客服:

      在線QQ: 303377504

      客服電話: 020-82301567

      E_mail郵箱: weilaitui@qq.com

      微信公眾號: weishitui

      客服001 客服002 客服003

      工作時間:

      周一至周五: 09:00 - 18:00

      反饋

      用戶
      反饋

      午夜久久久久久网站,99久久www免费,欧美日本日韩aⅴ在线视频,东京干手机福利视频
        <strike id="ca4is"><em id="ca4is"></em></strike>
      • <sup id="ca4is"></sup>
        • <s id="ca4is"><em id="ca4is"></em></s>
          <option id="ca4is"><cite id="ca4is"></cite></option>
        • 主站蜘蛛池模板: 夜来香高清在线观看| 日本大乳高潮视频在线观看| 国产精品va在线播放| 久热中文字幕在线| 蜜臀av免费一区二区三区| 无遮挡边吃摸边吃奶边做| 午夜网站在线播放| 亚洲人成色77777在线观看| 99国产在线观看| 欧美成人精品第一区二区三区| 国产激情视频在线播放| 久久久久久九九99精品| 精品亚洲一区二区三区在线播放| 夜夜高潮夜夜爽夜夜爱爱| 亚洲va中文字幕无码| 色欲欲WWW成人网站| 好男人视频在线观看免费看片| 亚洲毛片av日韩av无码| 狠狠色欧美亚洲综合色黑a| 欧美日本免费一区二区三区| 国产在线麻豆精品| 亚洲AV无码潮喷在线观看| 艳妇乳肉豪妇荡乳AV| 好男人资源网在线看片| 亚洲免费人成视频观看| 色狠狠一区二区三区香蕉| 大陆三级特黄在线播放| 亚洲av永久无码| 精品国产免费一区二区三区| 国产精品日日爱| 久久97久久97精品免视看| 熟女老女人的网站| 国产天堂在线观看| jizz国产视频| 福利一区二区三区视频在线观看| 国产精品白浆在线播放| 丰满人妻一区二区三区视频| 欧美黑人xxxx性高清版| 国产亚洲欧美bt在线电影| 99无码精品二区在线视频| 日韩avdvd|