洛谷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<stdio.h>
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;
}

欢迎各位读者提出意见。

(菜菜洛谷奋斗小日记)

相关推荐
妄想出头的工业炼药师7 小时前
GS slam mono
算法·开源
_日拱一卒8 小时前
LeetCode:207课程表
java·数据结构·算法·leetcode·职场和发展
用户9874092388710 小时前
llamafactory 0.6.3 没有 llamafactory-cli
算法
计算机安禾10 小时前
【算法分析与设计】第26篇:参数化算法与固定参数可解性理论
大数据·人工智能·算法·机器学习·剪枝
.千余10 小时前
【C++】C++类与对象2:C++构造函数、运算符重载与流输入输出全面解析
c语言·开发语言·前端·c++·经验分享
AI科技星11 小时前
基于**v=c(空间光速螺旋运动)唯一第一性原理**重新完整求导证明
人工智能·线性代数·算法·机器学习·架构·概率论·学习方法
风筝在晴天搁浅11 小时前
美团 LeetCode 692.前K个高频单词
算法·leetcode·职场和发展
地平线开发者11 小时前
量化训练时 fusebn/withbn 简介
算法·自动驾驶
不做无法实现的梦~11 小时前
MAVLink 协议教程
linux·stm32·嵌入式硬件·算法
墨白曦煜12 小时前
算法实战笔记:剥开回溯算法的外衣——从通用模板到高阶去重(八)
笔记·算法