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

欢迎各位读者提出意见。

(菜菜洛谷奋斗小日记)

相关推荐
ting94520003 小时前
Humalike X Hermes 深度技术剖析:单指令注入群聊社交智能的底层架构、算法与跨 IM 平台实现
人工智能·算法·架构
吴声子夜歌3 小时前
Java面试——算法
java·算法·面试
h_a_o777oah3 小时前
【图论】Tarjan 缩点:解决有向图中环的问题
c++·算法·图论·acm·强连通分量·缩点·tarjan
Tisfy3 小时前
LeetCode 1386.安排电影院座位:哈希表+位运算
算法·leetcode·散列表·题解·哈希表
Nil2084 小时前
leetcode 199二叉树的右视图
算法·leetcode·深度优先
M78佐菲5 小时前
c语言学习笔记:排序与查找方法整理
linux·c语言·笔记·学习·算法
wWYy.6 小时前
C++与C的区别
c语言·c++
AI备案指南-满满7 小时前
人工智能拟人化互动服务安全自评估报告的评估要点有哪些?
人工智能·算法·安全·机器人·大模型备案·算法备案
LuminousCPP7 小时前
数据结构‑二叉树(二):二叉堆从零实现|Heap结构设计 + 建堆优化 + 堆排序深度解析
c语言·数据结构·笔记·二叉树