2021年第十二届蓝桥杯大赛软件赛决赛C/C++大学A组 个人部分题解

题目下载链接:https://download.csdn.net/download/ljw_study_in_CSDN/19403461

这次国赛,基本上大题都是暴力写的,填空题只写了前两个,老混子选手了

文章目录

    • A题 纯质数(5分)
    • B题 完全日期(5分)
    • C题 最小权值(10分)
    • D题 覆盖(10分)
    • E题 123(15分)
    • F题 异或变换(15分)
    • G题 冰山(20分)
    • H题 翻转括 序列(20分)
    • I题 异或三角(25分)
    • J题 积木(25分)

A题 纯质数(5分)

答案:1903

B题 完全日期(5分)

答案:977

C题 最小权值(10分)

更新:状压dp

E题 123(15分)

类似于分块写的,分成中间若干个完整组,然后加上左右两边的部分组。预处理一下前 i i i组个数和前缀和,用二分找其位置。

按100%数据写的,期望别写挂

#include using namespace std;typedef unsigned long long ll;const ll N=2e6+3;ll a[N+10],sum[N+10];ll get_id(ll x) // 得到组 {    return (ll)(lower_bound(a+1,a+N+1,x)-a);}int main(){    ios::sync_with_stdio(false);    for(ll i=1;iN;i++)    {a[i]=(1+i)*i/2; // 前i组个数sum[i]=sum[i-1]+a[i]; // 前i组的和    }    int

                                                        

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年5月4日
下一篇 2021年5月4日

相关推荐