首页 > 其他分享 >SMU Summer 2024 Contest Round 6

SMU Summer 2024 Contest Round 6

时间:2024-07-23 10:07:32浏览次数:11  
标签:Summer int SMU 1000000 2024 long && dp define

1.Tak and Cards

原题链接:http://162.14.124.219/contest/1010/problem/B

设dp[i][j][k]是在前i个数中选j(j>=1)个数、其和为k的方案总数。第i个数有选与不选2种可能,由此得出转移方程dp[i][j][k]=dp[i-1][j][k]+dp[i-1][j-1][k-a[i]](j>=1)

查看代码

#include <bits/stdc++.h>
#define int long long
using namespace  std;
int a[1000000],dp[60][60][3600];
signed main()
{
    int n,m;
    cin>>n>>m;
    for(int i=1;i<=n;i++)cin>>a[i];
    for(int i=0;i<=n;i++)
    {
        for(int j=0;j<=n;j++)
        {
            for(int k=0;k<=n*m;k++)
            {
                if(i==0&&j==0&&k==0)dp[i][j][k]=1;
                else if(i>=1&&k<a[i])dp[i][j][k]=dp[i-1][j][k];
                else if(i>=1&&j>=1&&k>=a[i])dp[i][j][k]=dp[i-1][j][k]+dp[i-1][j-1][k-a[i]];
                else dp[i][j][k]=0;
            }
        }
    }
    int ans=0;
    for(int i=1;i<=n;i++)
        ans+=dp[n][i][i*m];
    cout<<ans;
    return 0;
}

2.Coloring Edges on Tree

原题链接:http://162.14.124.219/contest/1010/problem/D

先构造邻接表,再从度数最大的点dfs图涂色

查看代码
 #include<bits/stdc++.h>
using namespace std;
#define int long long
#define PII pair<int,int>
const int mod=1e9+7;
vector<PII> g[1000000];
int du[1000000];
int tu[1000000];
void dfs(int x,int y)
{
    int co=1;
    for(int i=0;i<g[x].size();i++)
    {
        int a=g[x][i].first,b=g[x][i].second;
        if(b==y)continue;
        if(tu[y]==co)co++;
        tu[b]=co++;
        dfs(a,b);
    }
}
signed main()
{
    int n;
    cin>>n;
    for(int i=1;i<n;i++)
    {
        int x,y;
        cin>>x>>y;
        g[x].push_back({y,i});
        g[y].push_back({x,i});
        du[x]++;
        du[y]++;
    }
    int ma=0;
    for(int i=1;i<=n;i++)
    {
        ma=max(ma,du[i]);
    }
    cout<<ma<<endl;
    dfs(ma,0);
    for(int i=1;i<n;i++)
        cout<<tu[i]<<endl;
    return 0;
}

标签:Summer,int,SMU,1000000,2024,long,&&,dp,define
From: https://www.cnblogs.com/violet-hty/p/18317651

相关文章

  • 2024-IDEA下载安装教程
    IDEA下载安装教程IDEA官网:IntelliJIDEA–theLeadingJavaandKotlinIDE(jetbrains.com)下载IDEA   双击运行ideaIU-2024.1.4.exe 安装     激活idea 链接:https://pan.baidu.com/s/1_lMVe0oODa-b4BrQJrpZTw?pwd=3456提取码:3456  ......
  • 【2024-07-22】连岳摘抄
    23:59赤日几时过,清风无处寻。经书聊枕籍,瓜李漫浮沉。兰若静复静,茅茨深又深。炎蒸乃如许,那更惜分阴。                                                 ——《大暑》宋·......
  • 凯斯博智能锁全市网点统一服务热线(2024更新号码)
    400服务电话:400-117-1060(点击咨询)凯斯博智能锁全市网点统一服务热线(2024更新号码)凯斯博智能锁全国各售后服务热线号码2024已更新(2024已更新)        凯斯博智能锁售后服务维修电话:(1)400-117-1060(点击咨询)(2)400-117-1060(点击咨询)        凯斯......
  • 图纸加密软件哪家强?2024CAD七款图纸加密软件推荐
    在2024年的今天,随着数字化转型的深入,保护企业的知识产权和商业机密变得尤为重要。对于依赖计算机辅助设计(CAD)的行业而言,图纸加密软件成为了维护设计图纸安全的关键工具。这些软件不仅能防止未授权访问,还能确保敏感信息在内外部流通时的安全。在众多的CAD图纸加密软件中,选择一款......
  • 在2024年部署Yolov5到本地(包含部署以及训练全过程,绝对保姆)
    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言        刚开始用yolo是用k210入门的,在那里学会了制作数据集以及进行训练,第一次了解到了目标检测,机器视觉,主要是因为电赛......
  • 2024年暑期2024牛客暑期多校训练营1 C和H题解
    C题SumofSuffixSums题目大意:开始是给你一空数组,要经历q次操作,每次操作都会给出两个数字t和v,其中要从数组末尾去走元素t次,最后加上元素v。定义si=ai+ai+1+ai+2+ai+3+......+an,最后求s1+s2+s3+.......+sn的总和。最后答案注意取模。 题解:注意到sum的总和其实就......
  • 2024“钉耙编程”中国大学生算法设计超级联赛(1)第一场1001
    循环位移题解2024“钉耙编程”中国大学生算法设计超级联赛(1)题目:ProblemDescription定义字符串S=S0+⋯+Sn−1循环位移k次为S(k)=Skmodn+⋯+Sn−1+S0+⋯+S(k−1)modn。定义[A]=\setA(k),k∈N.给出T组串A,B,询问B有多少个子串在[A]中。Input第一行一个......
  • USACO 2024Feb Silver
    https://usaco.org/index.php?page=feb24results话说usaco赛后怎么看成绩啊。为啥submission只有代码没有评测结果T3交了巨大多次才过T2胡了个做法,讨论不清楚,感觉很对,WA了T1啥都想不出来打一半弃考了。很烦,下午要去上学了467pts,750晋级,乐子大了LG10190[USACO24......
  • 2024牛客暑期多校训练营2(部分题目题解)
    2024牛客暑期多校训练营2(部分题目题解)C.RedWalkingonGrid题意:给定只有红白的2*n个格子,只能走红色各自且只能上下左右走,问最多可以走多少红色格子。题解:左右走:dp[0][i]=dp[0][i-1]+1;上下走:intk1=dp[0][i];intk2=dp[1][i];dp[0][i]=max(dp[0][i],k2+......
  • 2024杭电钉耙2-1003 HDOJ7447 绝对不模拟的简单魔方
    欢迎您来我的网站看这篇题解!Problem有一个魔方可能被拧了不超过三次,同时还弄丢了一个角块上的两个贴纸。现在把这两个贴纸贴回去,请问有没有贴错?只可能拧侧面,不会拧中间层,且每次只能拧\(90^\circ\)。魔方用一个9行12列的字符型矩阵表示:初始魔方的展开图如下图:\(1\leT......