洛谷P8825

[传智杯 #3 初赛] 运气 - 洛谷

传智杯 #3 初赛\] 运气 题目背景 YYH Land(Yoauld,Youthful \& Happy Land) 是位于炽蓝仙野的一片神奇的国度,那里的人们过着无拘无束的的快乐生活。 题目描述 哈兰·斯威提是 YYH Land 远近闻名的注铅骰子爱好者。有一天他碰到了这么一个问题: 你有一枚 6个面的骰子,分别写了 1,2,3,4,5,6 ,每一面朝上的概率是均等的。 现在哈兰想知道,如果他投掷 n次,并且将结果按顺序写在纸上成为一个数。(比如说如果哈兰扔了 3 次,分别是 3,2,5 ,那么他最后得到的数就是 325)他现在想知道这个数是 k 的倍数的可能情况有多少种,其中 k是一个特定的数。 由于这个方案数可能会很大,所以请你输出结果对 10\^9+7 取模的结果。 输入格式 一行两个整数 n,k ,意义如题所示。 输出格式 一行一个整数,表示答案。 样例 #1 样例输入 2 11 样例输出 6 提示 \*\*样例解释\*\* 在投掷两次骰子总共 36 种可能中,只有 ("11","22","33","44","55","66") $ 是符合条件的。所以答案是 6。 \*\*数据规模与约定\*\* 对于 40\\% 的数据,满足 n分别为 1,2,3,4; 对于另外 30\\% 的数据,满足 1 \<= k \<= 3; 对于 100% 的数据,满足 1 \<= n\<= 10, 1 \<= k\<= 1000; 代码区: ```cs #include int n,k; long long ans=0; void dfs(int stemp,long int sum){ if(stemp==n){ 达到投掷的次数 if(sum%k==0){ ans++; } return ; } int i; for(int i=1;i<=6;i++){ dfs(stemp+1,sum*10+i); } } int main(){ scanf("%d%d",&n,&k); dfs(0,0); printf("%lld",ans); return 0; } ``` 欢迎各位读者提出意见。 (菜菜洛谷奋斗小日记)

相关推荐
嵌入式学习和实践9 小时前
C语言-BCD码转换为十进制的测试和说明
c语言·转换·bcd码
喵了meme15 小时前
C语言实战4
c语言·开发语言
智者知已应修善业15 小时前
【求中位数】2024-1-23
c语言·c++·经验分享·笔记·算法
地平线开发者16 小时前
PTQ 量化数值范围与优化
算法·自动驾驶
sali-tec16 小时前
C# 基于halcon的视觉工作流-章68 深度学习-对象检测
开发语言·算法·计算机视觉·重构·c#
测试人社区-小明16 小时前
智能弹性伸缩算法在测试环境中的实践与验证
人工智能·测试工具·算法·机器学习·金融·机器人·量子计算
罗西的思考17 小时前
【Agent】MemOS 源码笔记---(5)---记忆分类
人工智能·深度学习·算法
程序员zgh19 小时前
Linux系统常用命令集合
linux·运维·服务器·c语言·开发语言·c++
Bigan(安)19 小时前
【奶茶Beta专项】【LVGL9.4源码分析】09-core-obj_class对象类系统
linux·c语言·mcu·arm·unix
qq_4335545419 小时前
C++数位DP
c++·算法·图论