国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

第十四屆藍橋杯省賽C++ A組淺析

這篇具有很好參考價值的文章主要介紹了第十四屆藍橋杯省賽C++ A組淺析。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

(僅個人看法,對錯未知,可以當做口胡QAQ)如有錯誤請大佬們指出,有更好做法歡迎留言!

A 幸運數(shù)

暴力判不多說了

B 有獎問答

看到很多搜的,提供一個dp做法
d p [ i ] [ j ] 表示前 i 道題,答對 j 道的方案數(shù) dp[i][j]表示前i道題,答對j道的方案數(shù) dp[i][j]表示前i道題,答對j道的方案數(shù)
有轉(zhuǎn)移式子,注意連續(xù)答對十道就無法繼續(xù)了
d p [ i ] [ j ] ? > d p [ i + 1 ] [ j + 1 ] , 0 ≤ j ≤ 9 , 當前答對了 dp[i][j]->dp[i+1][j+1],0\le j \le9,當前答對了 dp[i][j]?>dp[i+1][j+1],0j9,當前答對了
d p [ i ] [ j ] ? > d p [ i + 1 ] [ 0 ] , 當前答錯了 dp[i][j]->dp[i+1][0],當前答錯了 dp[i][j]?>dp[i+1][0],當前答錯了

C 平方差

標題也提示了平方差,那就展開一下
x = ( y + z ) ( y ? z ) , 不妨設(shè) y ≥ z x =(y+z)(y-z),不妨設(shè)y\ge z x=(y+z)(y?z),不妨設(shè)yz
可以發(fā)現(xiàn)x為奇數(shù)時,總能找到合法的y和z,令y = z + 1即可
x為偶數(shù)時,需要x為4的倍數(shù)才存在合法的y和z。
證明:
x為4的倍數(shù)時,把兩個因子2分別分給y和z,這樣y+z為偶數(shù),y-z為偶數(shù),有合法解
若x不為4的倍數(shù),也就是x只有一個2因子,那y和z總有一個是奇數(shù),y+z和y-z不為偶數(shù),方程無解。
證畢

也可以打表前幾項就能發(fā)現(xiàn)這個規(guī)律了,總的來說x為奇數(shù)或x為4的倍數(shù),才存在合法yz。

D 更小的數(shù)

區(qū)間dp

f [ l ] [ r ] , 表示 [ l , r ] 組成的子串是正著讀大,還是正反讀一樣大,還是反著讀大 , 分別用 1 , 0 , ? 1 表示 f[l][r],表示[l,r]組成的子串是正著讀大,還是正反讀一樣大,還是反著讀大,分別用1,0,-1表示 f[l][r],表示[l,r]組成的子串是正著讀大,還是正反讀一樣大,還是反著讀大,分別用1,0,?1表示
有轉(zhuǎn)移方程
f [ l ] [ r ] = f [ l + 1 ] [ r ? 1 ] , s [ l ] = s [ r ] f[l][r]=f[l+1][r-1],s[l]=s[r] f[l][r]=f[l+1][r?1],s[l]=s[r]
f [ l ] [ r ] = 1 , s [ l ] > s [ r ] f[l][r]=1,s[l]>s[r] f[l][r]=1,s[l]>s[r]
f [ l ] [ r ] = ? 1 , s [ l ] < s [ r ] f[l][r]=-1,s[l]<s[r] f[l][r]=?1,s[l]<s[r]

E 顏色平衡樹

樹上啟發(fā)式合并
cnt[i],表示顏色為i的點的數(shù)量
mutiset st 里維護cnt,對于以u為根的子樹,子樹里的點都扔進cnt和multiset后,當multiset里最小值==最大值時,說明當前子樹合法。
賽時沒想到更好的做法,只能打個dsu on tree暴力,時間復雜度 O ( n l o g 2 n ) O(nlog^2n) O(nlog2n),1s有點危險,相信籃球杯機子(畢竟收了那么多錢,機子應(yīng)該不爛吧??)。
PS:看到有樹剖做法似乎是1個log
發(fā)現(xiàn)賽時沒寫id數(shù)組??????應(yīng)該0分g了,加了id數(shù)組后下面代碼是對的(過了民間數(shù)據(jù)

const int N=2e5+10;
int n,m;
int Son;//目前的重兒子
std::vector<int> G[N];
int cnt[N],col[N],siz[N],son[N];
int sum,res;
int L[N],R[N],dfn,id[N];
multiset<int> st;
void dfs1(int x, int f){
    L[x] = ++dfn;
    id[dfn] = x;
    siz[x] = 1;
    for(int y:G[x]){
        if( y== f ) continue;
        dfs1(y,x);
        siz[x] += siz[y];
        //維護重兒子
        if( !son[x] || siz[y] > siz[son[x]] ) son[x] = y;
    }
    R[x] = dfn;
}
void add(int x){
    if( cnt[col[x]] ) st.erase(st.find(cnt[col[x]]));
    cnt[col[x]]++;
    st.insert(cnt[col[x]]);
}
void del(int x){
    st.erase(st.find(cnt[col[x]]));
    cnt[col[x]]--;
    if( cnt[col[x]] ) st.insert(cnt[col[x]]);
}
void dfs2(int x, int f ,bool keep){
    for(int y:G[x]){
        if( y==f || y == son[x] ) continue;
        dfs2(y,x,false);
    }
    if( son[x] ) dfs2(son[x],x,true);
    for(int y:G[x]){
        if( y==f || y == son[x] ) continue;
        for(int i=L[y] ;i<=R[y] ;i++) add(id[i]);
    }
    add(x);
    int mi = *st.begin();
    int ma = *prev(st.end());
    if( mi==ma ){
        res++;
    }
    if( !keep )
        for(int i=L[x] ;i<=R[x] ;i++) del(id[i]);
}
signed main(){
    cin>>n;
    _for(i,1,n){
        cin>>col[i];
        int x;cin>>x;
        if( i ){
            G[x].push_back(i);
            G[i].push_back(x);
        }
    }
    dfs1(1,0);
    dfs2(1,0,0);
    cout<<res;
}

F 買瓜

折半搜索
n為30,不難想到拆成兩半暴力
然后這里每個瓜有三個狀態(tài):買,不買,取一半買,我用了三進制, 3 15 = 14348907 3^{15}=14348907 315=14348907,給了1s,感覺有點危險
具體來說
前一半,處理出每種狀態(tài),維護一個unordered_map<double,int> mp,表示重量為S最少的劈瓜次數(shù)
后一半,同理處理出每種狀態(tài),假設(shè)當前重量為K,目標重量為Tar,則ans = min(ans,mp[tar-k] + 當前劈瓜次數(shù))

G 網(wǎng)絡(luò)穩(wěn)定性

賽時想到了克魯斯卡爾重構(gòu)樹/虛樹,沒板子不會打(打ACM打的.jpg),遂打了離線詢問+暴力,maybe能拿70分

群里看了討論,正解大概是,先求最大生成樹,然后再克魯斯卡重構(gòu)樹,對于每個詢問(u,v)求一下lca。

H 異或和之和

思維+前綴和
按位考慮,假設(shè)當前是第k位,做一下異或前綴和得到數(shù)組pre,我們枚舉第i個數(shù)作為區(qū)間右端點,對于第i個數(shù),有貢獻 2 k ? c n t [ p r e [ i ] ⊕ 1 ] , 其中 c n t [ 0 / 1 ] 表示前綴和為 0 / 1 的數(shù)量 2^k*cnt[pre[i] \oplus1],其中cnt[0/1]表示前綴和為0/1的數(shù)量 2k?cnt[pre[i]1],其中cnt[0/1]表示前綴和為0/1的數(shù)量

I 像素放置

狀壓(口胡的)
對于每個位置(x,y)只要考慮周圍8個位子的放置狀態(tài),用狀壓維護,這個過程感覺特別繁瑣,應(yīng)該有一車細節(jié)要考慮。遂本退役蒟蒻打了個暴力就扔了(

J 翻轉(zhuǎn)硬幣

數(shù)論
打了個表,發(fā)現(xiàn)不合法的數(shù)都有平方因子,遂問題轉(zhuǎn)化成求1~n中無平方因子數(shù)量,然后不會做了
群里問了佬,根號做法的式子是
∑ k = 1 n μ ( k ) ? n k 2 \sum_{k=1}^{\sqrt{n}} \mu(k)*\frac{n}{k^2} k=1n ??μ(k)?k2n?,然后聽群佬說下面是用杜教篩繼續(xù)做,不會構(gòu)造卷積式,卡住了不會做QAQ文章來源地址http://www.zghlxwxcb.cn/news/detail-412417.html

到了這里,關(guān)于第十四屆藍橋杯省賽C++ A組淺析的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 第十四屆藍橋杯省賽JavaB組試題E【蝸牛】個人題解Dijkstra堆優(yōu)化

    第十四屆藍橋杯省賽JavaB組試題E【蝸牛】個人題解Dijkstra堆優(yōu)化

    ??????????????????????????????????????????????????????????????????????????????????????????????????????? ????????????????????????????????????????????? 第十四屆藍橋杯省賽JavaB組試題E【蝸?!緿ijkstra堆

    2023年04月15日
    瀏覽(28)
  • 第十三屆藍橋杯省賽與國賽真題題解大匯總(十四屆參賽者必備)

    ??大家好,我是執(zhí)梗。本文匯總了我寫的第十三屆藍橋杯所有省賽真題與國賽真題,會針對每道題打出我自己的難度評星??,也會給出每道題的算法標簽,幫助大家更有針對性的去學習和準備,當然許多題目由于難度或時間的原因暫未更新,如果有不懂的問題也可以在評

    2024年02月11日
    瀏覽(37)
  • 第十四屆藍橋杯省賽 C/C++ A 組 H 題——異或和之和(AC)

    給定一個數(shù)組 A i A_i A i ? ,分別求其每個子段的異或和,并求出它們的和?;蛘哒f,對于每組滿足 1 ≤ L ≤ R ≤ n 1 leq L leq R leq n 1 ≤ L ≤ R ≤ n 的 L , R L, R L , R ,求出數(shù)組中第 L L L 至第 R R R 個元素的異或和。然后輸出每組 L , R L, R L , R 得到的結(jié)果加起來的值。 輸入的第

    2024年02月13日
    瀏覽(89)
  • 第十四屆藍橋杯省賽JavaB組試題E【蝸牛】Dijkstra堆優(yōu)化 or 線性DP?

    第十四屆藍橋杯省賽JavaB組試題E【蝸牛】Dijkstra堆優(yōu)化 or 線性DP?

    ??????????????????????????????????????????????????????????????????????????????????????????????????????? ????????????????????????????????????????????? 第十四屆藍橋杯省賽JavaB組試題E【蝸牛】Dijkstra堆

    2024年02月01日
    瀏覽(22)
  • 十四屆藍橋杯省賽CB

    十四屆藍橋杯省賽CB

    寫的時候沒跑出來,僅僅是因為給 (i*i) 加了括號,爆了int?。。?雙精度浮點的表示范圍:-1.79E+308 ~ +1.79E+308 基本類型:int 二進制位數(shù):32(4字節(jié)) 最小值:Integer.MIN_VALUE= -2147483648 (-2的31次方) 最大值:Integer.MAX_VALUE= 2147483647 (2的31次方-1 double范圍很大,基本不可能爆,不

    2024年02月08日
    瀏覽(21)
  • 2023年第十四屆藍橋杯省賽Java C組題解

    只做出來(ACDFGH),挑幾個出來,答案不一定正確,但自己測試通過了 求1~20230408的和 這里就直接套等差數(shù)列的求和公式,答案:204634714038436 ? 【問題描述】 ????????有一個長度為n的數(shù)組(n是10的倍數(shù)),每個數(shù) Ai 都是區(qū)間[0,9]中的整數(shù),小明發(fā)現(xiàn)數(shù)組里每種數(shù)出現(xiàn)的次數(shù)不太

    2023年04月26日
    瀏覽(33)
  • 第十四屆藍橋杯大賽青少年省賽C++組試題真題 2023年5月

    第十四屆藍橋杯大賽青少年省賽C++組試題真題 2023年5月

    一、選擇題 第 1 題 單選題 C++中,bool類型的變量占用字節(jié)數(shù)為 ( )。 A. 1 B. 2 C. 3 D. 4 第 2 題 單選題 以下關(guān)于C++結(jié)構(gòu)體的說法,正確的是 ( )。 A. 結(jié)構(gòu)體中只能包含成員變量,不能包含成員函數(shù) B. 結(jié)構(gòu)體不能從另一個結(jié)構(gòu)體繼承 C. 結(jié)構(gòu)體里面可以包含靜態(tài)成員變量 D. 結(jié)構(gòu)體里

    2024年02月15日
    瀏覽(42)
  • 第十四屆藍橋杯Python B組省賽復盤

    第十四屆藍橋杯Python B組省賽復盤

    【問題描述】(5 分) 請求出在 12345678 至 98765432 中,有多少個數(shù)中完全不包含 2023 。 完全不包含 2023 是指無論將這個數(shù)的哪些數(shù)位移除都不能得到 2023 。 例如 20322175,33220022 都完全不包含 2023,而 20230415,20193213 則 含有 2023 (后者取第 1, 2, 6, 8 個數(shù)位) 。 【思路】 正則表達

    2024年02月02日
    瀏覽(20)
  • 藍橋杯嵌入式第十四屆省賽題目解析

    藍橋杯嵌入式第十四屆省賽題目解析

    前幾天剛剛參加完第十四屆的省賽,這屆題目比我想象中的要難,其實想一想這也是應(yīng)該的,以前的知識點都被摸透了,也是需要加入新的知識點了,但是我還是想說能不能別在我參加的時候加大題目難度啊。 不過聽說隔壁單片機的省賽都比往年的國賽還難,這就有點離譜了

    2024年02月06日
    瀏覽(103)
  • 第十四屆藍橋杯大賽軟件賽省賽JavaB組解析

    第十四屆藍橋杯大賽軟件賽省賽JavaB組解析

    目錄 說在前面 試題 A: 階乘求和 代碼: 題目分析: 試題 B: 幸運數(shù)字 代碼: 題目分析: 試題 D: 矩形總面積 代碼: 題目分析: 試題 G: 買二贈一 代碼: 題目分析: 試題 H: 合并石子 代碼: 題目思路: 說在最后 比賽結(jié)束啦,可能這是本科生涯的最后一次藍橋杯啦!賽前也

    2023年04月11日
    瀏覽(23)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包