当前位置: 首页 > news >正文

动态规划(选择)

链接:登录—专业IT笔试面试备考平台_牛客网
来源:牛客网

作为队伍的核心,forever97很受另外两个队友的尊敬。
Trote_w每天都要请forever97吃外卖,但很不幸的是宇宙中心forever97所在的学校周围只有3家forever97爱吃的外卖。
如果Trote_w给forever97买了别家的外卖,forever97就会大喊“我不吃我不吃”。
但是forever97又不喜欢连续三天吃一种外卖。
如果Trote_w哪天忘了这件事并且三天给他买了同一家外卖,那么forever97就会把Trote_w的头摁进手机屏幕里。
作为Trote_w的好朋友,你能告诉他连续请forever97吃n天饭,有多少不同的购买方法吗?


分析:

可以重复,也可以不重复,可以弄一个维度,表明与上一个重复或者不重复。

所以本位重复,那么上一位就不能重复,两者等价。

如果本为不重复,那么上一位可以重复或者不重复,所以等于(重复+不重复)*两种可能


#include<bits/stdc++.h>
typedef long long ll;
using namespace std;
ll mod=1e9+7;
void solve()
{ll n;cin>>n;ll dp[n+1][3];memset(dp,0,sizeof dp);if(n==1){cout<<3<<'\n';return ;}else if(n==2){cout<<9<<'\n';return ;}else{dp[2][0]=6,dp[2][1]=3;for(ll i=3;i<=n;i++){dp[i][0]=(dp[i-1][1]%mod+dp[i-1][0]%mod)*2%mod;dp[i][1]=dp[i-1][0];}cout<<(dp[n][0]+dp[n][1])%mod<<'\n';return ;}
}int main(){ios_base::sync_with_stdio(false);cin.tie(0);cout.tie(0);ll t=1;cin>>t;while(t--)solve();return 0;}

http://www.lryc.cn/news/157699.html

相关文章:

  • IIS WebDAV配置,https绑定及asp设置
  • 【计算机视觉项目实战】中文场景识别
  • Java 中 Map 初始化的几种方法
  • 【学习方法论】学习的三种境界、三种习惯、三个要点,三个心态
  • [管理与领导-67]:IT基层管理者 - 辅助技能 - 4- 职业发展规划 - 评估你与公司的八字是否相合
  • 【PMO项目管理】深入了解项目管理 | Stakeholder 利益相关者 | 利益相关者之间的立场差异
  • 设计模式-原则篇-01.开闭原则
  • JAVA毕业设计096—基于Java+Springboot+Vue的在线教育系统(源码+数据库+18000字论文)
  • windows环境搭建ELK
  • langchain介绍之-Prompt
  • 汇编语言Nasmide编辑软件
  • 用python开发一个炸金花小游戏
  • Uniapp中使用uQRCode二维码跳转小程序页面
  • 解决husky在mac下不生效的问题
  • 如何在自动化测试中使用MitmProxy获取数据返回?
  • 达之云BI平台助力中国融通集团陕西军民服务社有限公司实现数字化运营
  • Private market:借助ZK实现的任意计算的trustless交易
  • 反序列化漏洞复现(typecho)
  • QT设计一个小闹钟
  • MybatisPlus(3)
  • 安全计算环境技术测评要求项
  • Excel快捷键表
  • Windows Server 系统各版本及授权说明(附下载地址
  • 【智慧工地源码】物联网和传感器技术在智慧工地的应用
  • 计算机安全学习笔记(IV):基于角色的访问控制 - RBAC
  • MFC中的Button修改颜色的方法
  • 【算法】选择排序
  • golang之context实用记录
  • 音视频FFmpeg简单理解学习,必学技术
  • 一款内网信息收集利用工具