火车站 题解

该博客介绍了一道关于火车站鸣笛方案数的算法问题,其中涉及到动态规划和区间DP的解题方法。站长需要确保鸣笛音调的绝对差不小于K,以避免混淆。博主解析了如何将火车进站出站转化为括号问题,并提出了两种情况的DP转移方程,最终计算出结果并考虑了优化复杂度的可能性。
摘要由CSDN通过智能技术生成

题目传送门

题目背景

有一个奇奇怪怪的火车站,奇奇怪怪的站长JTZ想要解决一个奇奇怪怪的问题。

题目描述

现在有 N N N 列火车要进出站,对于同一列车进站和出站有且只有一次鸣笛,笛声有 1 − M 1-M 1M 种音调,要求相邻的两次鸣笛之间音调的差的绝对值不能小于 K K K (不鸣笛笛声音调看作 1 e 100 1e100 1e100 )。不然耳朵不好的车站管理员XYH分不清楚是哪一列车,现在XYH给出了每一列火车的进出,JTZ想知道总共有多少种鸣笛的方案,而他又不想太麻烦,所以只需要方案数除以 43621789 43621789 43621789 的余数。
某中学八年级大佬RSJ知道了这个消息后,觉得太简单了,几下算出了结果 x x x (取余数后)。于是他想让你算出 M x m o d    43621789 M^x \mod 43621789 Mxmod43621789

输入格式

第一行三个整数 N , M , K N,M,K N,M,K
第二行有 2 N 2N 2N 个整数,每个整数是 0 0 0 1 1 1 代表车进站和出站,保证数据合法,也就是说当车站没有车的时候没有车出站,最后车站没有车。

输出格式

一行,表示答案。( M x m o d    43621789 M^x \mod 43621789 Mxmod43621789 )

输入输出样例

输入#1

2 1 0
0 0 1 1

输出#1

1

输入#2

3 5 2
0 0 0 1 1 1

输出#2

40308287

提示/说明

图非常重要

样例解释:

样例1: x = 4 , M = 1 x=4,M=1 x=4,M=1 答案为 1 4 m o d    43621789 = 1 1^4 \mod 43621789=1 14mod43621789=1
样例2: x = 250 , M = 5 x=250,M=5 x=250,M=5 答案为 5 250 m o d    43621789 = 40308287 5^{250} \mod 43621789=40308287 5

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值