• 【题解】CF45G Prime Problem


    【题解】CF45G Prime Problem

    哥德巴赫板子题?

    (frac{n(n+1)}{2})若是质数,则不需要分了。

    上式 若是奇数,那么拆成2和另一个数。

    上式 若是偶数吗,直接(O(n))枚举。

    加上暴力判质数,复杂度(O(nsqrt{n}))

    没写,蒯别人的吧

    //老写不对 交个题解看题解对不对
    #include<iostream>
    #include<cstring>
    #include<algorithm>
    #include<cstdio>
    #include<queue>
    #include<bitset>
    #include<vector>
    #include<map>
    #include<ctime>
    #include<cstdlib>
    #include<set>
    #include<bitset>
    #include<stack>
    #include<list>
    #include<cmath>
    using namespace std;
    #define RP(t,a,b) for(register int (t)=(a),edd_=(b);t<=edd_;++t)
    #define DRP(t,a,b) for(register int (t)=(a),edd_=(b);t>=edd_;--t)
    #define ERP(t,a) for(int t=head[a];t;t=e[t].nx)
    #define Max(a,b) ((a)<(b)?(b):(a))
    #define Min(a,b) ((a)<(b)?(a):(b))
    #define TMP template<class ccf>
    #define lef L,R,l,mid,pos<<1
    #define rgt L,R,mid+1,r,pos<<1|1
    #define midd register int mid=(l+r)>>1
    #define chek if(R<l||r<L)return
    #define all 1,n,1
    #define pushup(x) seg[(x)]=seg[(x)<<1]+seg[(x)<<1|1]
    typedef long long ll;
    TMP inline ccf qr(ccf k){
        char c=getchar();
        ccf x=0;
        int q=1;
        while(c<48||c>57)
        q=c==45?-1:q,c=getchar();
        while(c>=48&&c<=57)
        x=x*10+c-48,c=getchar();
        if(q==-1)
        x=-x;
        return x;
    }
    const int _=6005;
    inline int read(){
        return qr(1);
    }
    int n,ans[_];
    void Print(){
        for(int i=1;i<=n;++i)
            printf("%d ",ans[i]);
        puts("");
    }
    bool check(int x){
        int q=sqrt(x);
        for(int i=2;i<=q;++i)
            if(!(x%i))return 0;
        return 1;
    }
    int main(){
        n=read();
        int m=(n+1)*n/2;
        for(int i=1;i<=n;++i)ans[i]=1;
        if(check(m)){Print();return 0;}
        if(m&1&&!check(m-2))ans[3]=3,m-=3;
        for(int i=2;i<=n;++i)
            if(check(i)&&check(m-i))
            {ans[i]=2;break;}
        Print();
        return 0;
    }
    
    
  • 相关阅读:
    <hdu2072>单词数(set容器,string类应用)
    志愿者选拔
    Game of Life
    <LightOJ 1338> Hidden Secret!
    Miss Kitty and Her Little Ice Cream Shop(水题)
    约瑟夫问题
    <FZU 1019>猫捉老鼠
    <cf>System of Equations(水题)
    Palindromic Numbers (III)(回文数,较麻烦)
    <cf>Solitaire(DFS or DP)
  • 原文地址:https://www.cnblogs.com/winlere/p/10332991.html
Copyright © 2020-2023  润新知