zoukankan      html  css  js  c++  java
  • #82. 【UR #7】水题生成器

    uoj 传送门

    这是uoj上的题解

    先写了一个45分的dfs

    #include<iostream>
    #include<cstdio>
    #include<cstring>
    #include<cmath>
    #include<algorithm>
    #define LL long long
    using namespace std;
    LL n,m,ans[50],P=1;
    void dfs(int x,LL sum)
    {
        if(x==n+1)
        {
            if(sum==m){
                for(int i=1;i<x;i++) printf("%lld
    ",ans[i]);
                exit(0);
            }
            return;
        }
        if(sum==m){
            for(int i=1;i<x;i++) printf("%lld
    ",ans[i]);
            exit(0);
        }
        for(LL i=m-sum;i>=ans[x-1];i--)
        {
            if(P%i==0) ans[x]=i,dfs(x+1,sum+i);
        }
    }
    int main()
    {
        scanf("%lld%lld",&n,&m);
        for(int i=2;i<=n;i++) P*=1ll*i;
        ans[0]=1;
        dfs(1,0);
        return 0;
    }

    好像有贪心的写法
    http://uoj.ac/submission/12608参考

    阶乘进位制?

    #include<iostream>
    #include<cstdio>
    #include<cstring>
    #include<cmath>
    #include<algorithm>
    #define LL long long
    using namespace std;
    LL n,m,tot=1;
    int main()
    {
        scanf("%lld%lld",&n,&m);
        for(int i=1;i<=n;i++) tot*=1ll*i;
    
        for(int i=1;i<=n;i++)
        {
            tot/=i;
            if(tot<=m)
            {
                printf("%lld
    ",tot*(m/tot));
                m%=tot;
            } 
        } 
        return 0;
    } 
  • 相关阅读:
    荣岩岩作业10
    荣岩岩作业9
    荣岩岩作业8
    荣岩岩作业7
    荣岩岩作业6
    荣岩岩作业5
    荣岩岩作业4
    list<T>与datatable互相转换
    IE缓存机制
    html界面添加判断
  • 原文地址:https://www.cnblogs.com/dfsac/p/7587814.html
Copyright © 2011-2022 走看看