日程表安排

【题目描述】

有四个队伍参加ACM的暑期培训,时间为n天。四个队伍的名字分别标为队伍A、B、C、D,每天有一支队伍负责出题。作为培训班的老师,你可以决定每天由哪支队伍出题。但是有一些事项要注意:

1.没有队伍能够连续两天出题;

2.在培训的其中m天中,负责出题的队伍事先已经确定(例如:A队负责出第1天的题,B队负责出第6天的题,这两天的出题队伍就不能再被改变);

询问一共有多少种安排方案并输出结果(结果要对1000000007求余)。

【输入描述】

第一行两个整数n、m (1 ≤ n ≤ 10000000,0 ≤ m ≤ 10),n表示暑期培训的天数,m表示已经安排好的天数。接下来的m行表示对应天负责出题的队伍。

【输出描述】

所有的方案数(结果要对1000000007求余)。

【样例输入】

样例1:

3 2

1 A

3 C

 

样例2:

2 1

1 D

【样例输出】

样例1:

2

 

样例2:

3

【数据范围及提示】

样例1:

ABC、ADC

 

样例2:

DA、DB、DC

转载于:https://www.cnblogs.com/Ackermann/p/5698758.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值