news 2026/9/2 21:30:38

打卡信奥刷题(2606)用C++实现信奥题 P2476 [SCOI2008] 着色方案

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
打卡信奥刷题(2606)用C++实现信奥题 P2476 [SCOI2008] 着色方案

P2476 [SCOI2008] 着色方案

题目描述

nnn个木块排成一行,从左到右依次编号为111nnn

你有kkk种颜色的油漆,第iii种颜色的油漆足够涂cic_ici个木块。

所有油漆刚好足够涂满所有木块,即∑i=1kci=n\sum_{i=1}^kc_i=ni=1kci=n

由于相邻两个木块涂相同色显得很难看,所以你希望统计任意两个相邻木块颜色不同的着色方案。

由于答案可能很大,请输出对109+710^9+7109+7取模的结果。

输入格式

第一行,一个整数kkk,表示颜色数量。

第二行kkk个整数c1,c2,…,ckc_1,c_2,\dots,c_kc1,c2,,ck,表示每种颜色能够涂木块的个数。

输出格式

一行一个整数,表示答案对109+710^9+7109+7取模的结果。

输入输出样例 #1

输入 #1

3 1 2 3

输出 #1

10

输入输出样例 #2

输入 #2

5 2 2 2 2 2

输出 #2

39480

输入输出样例 #3

输入 #3

10 1 1 2 2 3 3 4 4 5 5

输出 #3

85937576

说明/提示

  • 对于50%50\%50%的数据,1≤k≤51 \leq k \leq 51k51≤ci≤31 \leq c_i \leq 31ci3
  • 对于100%100\%100%的数据,1≤k≤151 \leq k \leq 151k151≤ci≤51 \leq c_i \leq 51ci5

C++实现

#include<bits/stdc++.h>#defineRGregister#defineILinline#defineFill(a,b)memset(a,b,sizeof(a))usingnamespacestd;typedeflonglongll;constintZsy(1e9+7);IL llInput(){RG ll x=0,z=1;RGcharc=getchar();for(;c<'0'||c>'9';c=getchar())z=c=='-'?-1:1;for(;c>='0'&&c<='9';c=getchar())x=(x<<1)+(x<<3)+(c^48);returnx*z;}intk,c[16],C[80][80],f[20][80],sum[16];ILvoidPrepare(){C[0][0]=1;for(RGinti=1;i<=75;++i){C[i][0]=1;for(RGintj=1;j<=75;++j)C[i][j]=(C[i-1][j]+C[i-1][j-1])%Zsy;}}intmain(RGintargc,RGchar*argv[]){Prepare();k=Input();for(RGinti=1;i<=k;++i)c[i]=Input(),sum[i]=sum[i-1]+c[i];f[1][c[1]-1]=1;for(RGinti=1;i<k;++i)for(RGintj=0;j<sum[i];++j){if(!f[i][j])continue;for(RGinta=1;a<=c[i+1];++a)for(RGintb=0;b<=a&&b<=j;++b){RGintret=1LL*f[i][j]*C[c[i+1]-1][a-1]%Zsy*C[j][b]%Zsy;ret=1LL*ret*C[sum[i]+1-j][a-b]%Zsy;(f[i+1][j+c[i+1]-a-b]+=ret)%=Zsy;}}printf("%d\n",f[k][0]);return0;}

后续

接下来我会不断用C++来实现信奥比赛中的算法题、GESP考级编程题实现、白名单赛事考题实现,记录日常的编程生活、比赛心得,感兴趣的请关注,我后续将继续分享相关内容

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/2 21:24:12

YOLO目标检测中的长尾分布问题:少样本类别应对

YOLO目标检测中的长尾分布问题&#xff1a;少样本类别应对 在工业质检线上&#xff0c;一台基于YOLO的视觉系统正高速运转&#xff0c;实时识别产品表面缺陷。突然&#xff0c;一个极其罕见但致命的“微裂纹”缺陷从传送带上闪过——模型沉默了。它从未见过这种样本足够多的“典…

作者头像 李华
网站建设 2026/8/27 0:27:27

YOLO模型输入预处理标准化:图像归一化参数设置

YOLO模型输入预处理标准化&#xff1a;图像归一化参数设置 在工业相机高速运转的流水线上&#xff0c;一张产品图像从采集到缺陷判定往往只有几十毫秒。就在这短暂的时间内&#xff0c;深度学习模型必须准确识别出微米级的划痕或色差——而这一切的起点&#xff0c;并非复杂的网…

作者头像 李华
网站建设 2026/8/28 9:41:09

YOLO模型版本迭代路线图:未来发展方向预测

YOLO模型版本迭代路线图&#xff1a;未来发展方向预测 在智能制造产线高速运转的今天&#xff0c;每毫秒都决定着良品率与产能。一台PCB检测设备若因视觉算法延迟0.1秒&#xff0c;整条流水线就可能停滞——这正是现代工业对实时目标检测提出的严苛挑战。而在这场“速度与精度”…

作者头像 李华
网站建设 2026/9/2 12:26:05

YOLO模型冷热数据分离:长期存储与即时访问的平衡

YOLO模型冷热数据分离&#xff1a;长期存储与即时访问的平衡 在智能制造工厂的视觉质检线上&#xff0c;一个看似简单的请求——“切换到上个月的YOLOv8模型进行复检”——却可能让系统卡顿数分钟。原因并不复杂&#xff1a;边缘设备本地存储早已被高频调用的主模型占满&#x…

作者头像 李华
网站建设 2026/9/2 21:01:14

YOLO模型远程调试技巧:通过SSH连接GPU服务器

YOLO模型远程调试技巧&#xff1a;通过SSH连接GPU服务器 在智能安防摄像头实时识别可疑行为、自动驾驶车辆毫秒级响应路况变化的今天&#xff0c;深度学习工程师面临的最大挑战之一&#xff0c;早已不是算法本身&#xff0c;而是——如何让这些庞大的YOLO模型真正跑起来。 本地…

作者头像 李华