日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【无码专区5】01串(大讨论+构造)

發布時間:2023/12/3 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【无码专区5】01串(大讨论+构造) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

因為只有std,沒有自我實現,所以是無碼專區

主要是為了訓練思維能力

solution才是dls正解,但是因為只有潦草幾句,所以大部分會有我自己基于正解上面的算法實現過程,可能選擇的算法跟std中dls的實現不太一樣。

std可能也會帶有博主自己的注釋。

problem

多組數據,給定 n,mn,mn,m,構造一個 n+mn+mn+m 長度的 01 串。

  • 包含 nnn111mmm000
  • 將這個串看成二進制數后能被 333 整除。
  • 沒有前導零,即高位第一位必須為 111

分別輸出字典序最大和最小的符合條件的 01 串。不存在就輸出 -1。

T≤100,n,m≤1e5T\le 100,n,m\le 1e5T100,n,m1e5


我的想法

observation:二進制相鄰兩位若都是 111,則這兩個位代表的 222 的冪的和一定是 333 的倍數。

證明:2i+2i?1=(2+1)?2i?1=3k2^i+2^{i-1}=(2+1)·2^{i-1}=3k2i+2i?1=(2+1)?2i?1=3k

如果 nnn 為偶數。

  • 字典序最大一定是形如 1111...100...000 。

  • 字典序最小第一時間肯定會以為是 00...011..11 ,但是要求不能出現前導零。所以第一位固定為 111 后,其代表的冪次,2i2^i2i 取模 333 一定是 1/21/21/2

    • 如果取模是 111,那么只需要某一位也為 1112k≡2(mod3)2^k\equiv 2\pmod 32k2(mod3)】就又可以湊成倍數。形如 100...0010...0111..1111。
    • 如果取模是 222,那么只需要第一位也為 111就湊成倍數,形如 100..0011..111。

如果 nnn 為奇數。

  • 字典序最大。

    肯定也是前面一堆連續的 111,然后最后面的 333 個數的冪次都是取模為 111

    形如 111..10..01..0100...00(最前面的連續 111 段長度肯定也是奇數)。

  • 字典序最小。

    首位是 111 沒得跑。肯定也是后面一堆連續的 111,然后最前面的 333 個數的冪次都是取模為 111

    形如 10...00010...010...011111...11(最后面的連續 111 段長度得是奇數)。

顯然,偶數一定是有解的。奇數就不一定了,因為可能 111 個數不夠。


solution

簡單的討論。

如果只有一個 111, 或者 111 的個數為奇數, 但 000 的個數不超過 111, 那么無解。

  • 只有一個 111, 顯然無解。
  • 如果 111 的個數為奇數, 000 的個數是 000 個, 那么一定是 1111...111 這樣, 無解。
  • 如果 111 的個數為奇數, 000 的個數是 111 個, 那么相當于 1111...1111 減去一個 111, 但是 1111...11111111...11111111...1111 模三余 000, 減去一個 111 之后模三不等于 000,所以無解。

如果 nnn 是偶數, 那么最大值一定是 1111000000 這樣, 最小值首先放一個 111, 最后放 n?2n-2n?2111,剩下的一個 111 用來和 第一個 111 之間放偶數個 000 保證能被 333 整除。

如果 nnn 是奇數,那么首先放 n?3n-3n?3111,這部分能被 333 整除,然后放 10101,然后放若干個 000。最小值同理,開頭放一個 111,末尾放 n?3n-3n?3111,中間放 101,保證 1 和 101 中間有奇數個 000,這樣前半部分也被整除了。

時間復雜度 O(n)O(n)O(n)


std

#include <bits/stdc++.h> using namespace std;string mul(string a, int b) {string c;for (int i = 0; i < b; i++)c += a;return c; } string mx, mn;int main() {freopen("binary.in", "r", stdin);freopen("binary.out", "w", stdout);int T;scanf("%d", &T);while (T--) {int n, m;scanf("%d%d", &n, &m);if (n <= 1 || (n % 2 == 1 && m <= 1)) {mx = "-1";mn = "-1";} else {if (n % 2 == 0)mx = mul("1", n) + mul("0", m);elsemx = mul("1", n - 2) + "0101" + mul("0", m - 2);if (n % 2 == 0)mn = "1" + mul("0", m / 2 * 2) + "1" + mul("0", m % 2) + mul("1", n - 2);elsemn = "1" + mul("0", m / 2 * 2 - 1) + "101" + mul("0", m % 2) + mul("1", n - 3);}printf("%s\n%s\n", mx.c_str(), mn.c_str());} }

總結

以上是生活随笔為你收集整理的【无码专区5】01串(大讨论+构造)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲美女爱爱 | 国产午夜福利在线播放 | 国产欧美日韩精品在线 | 2019日韩中文字幕 | 天天干夜夜拍 | 国产av无码专区亚洲a∨毛片 | 综合精品国产 | 啪啪日韩 | 在线免费观看中文字幕 | 日本在线免费视频 | jizz俄罗斯 | 精产国品一二三区 | 国产又粗又猛又爽又 | 青娱乐国产视频 | 伊人国产在线视频 | 国内激情视频 | 男女互操视频 | 亚洲久久一区二区 | 亚洲一区国产精品 | 精品久久久久久久久久久久久久久久 | 我把护士日出水了视频90分钟 | 亚洲天堂免费看 | 91精品国产91久久久久久黑人 | 国产一级黄色录像 | 第一章豪妇荡乳黄淑珍 | av丝袜在线 | 欧美大片91 | 日韩精品网址 | 九色视频在线观看 | 日本免费色 | 免费看国产黄色片 | 色哟哟免费视频 | 在线免费观看日韩视频 | 国产成人无码精品 | 国产精品久久久久国产a级 国产一区二区在线播放 | 国产欧美日韩 | 精品亚洲永久免费精品 | 亚洲国产精品欧美久久 | 亚洲女人初尝黑人巨大 | 深夜福利免费视频 | 欧美精品乱人伦久久久久久 | 久久精品一日日躁夜夜躁 | 强伦轩人妻一区二区电影 | 国产中文字幕亚洲 | 免费中文视频 | 黄色网址视频 | 国产精品不卡在线 | 免费国产91| jjzz日本女人 | 一区二区三区日韩精品 | 亚洲系列第一页 | 欧美福利电影 | 国产精品视频久久久久 | 最新视频 - 8mav | 久久久久一区二区三区 | 不用播放器看av | 天堂av2018 | 中文字幕在线观看视频免费 | 国产一区二区视频免费观看 | 黄色片视频在线观看 | 内射合集对白在线 | 亚洲欧洲国产日韩 | 深夜福利网址 | 亚洲在线成人 | 欧美三级午夜理伦三级小说 | 色视频在线观看 | 欧美精品啪啪 | 夜间福利在线观看 | 亚洲国产精品电影 | 国产一级片 | 99在线精品观看 | 久久久久成人精品免费播放动漫 | 人妻一区二区三区四区五区 | 老版k8经典电影 | 国产精品18p | 人人妻人人澡人人爽精品 | 成人mv| 国产又大又粗又爽的毛片 | 免费亚洲网站 | 日韩av线 | 999www| 日本a v在线播放 | 久久精品av | 国产欧美日韩在线 | 国产日皮视频 | 亚洲男人的天堂网站 | 人人射视频 | 在线高清观看免费 | 日b视频免费观看 | 粉嫩精品久久99综合一区 | 日韩美女视频在线观看 | 成人性生活免费看 | 国产黑丝一区 | 欧美日韩国产精品 | 麻豆传媒网站入口 | 99re5 | 丰满少妇麻豆av苏语棠 | 欧美精品片 | 久久er99热精品一区二区介绍 |