动态规划 || 威威猫系列故事——篮球梦 (类似背包)
威威猫系列故事——篮球梦
威威猫十分迷恋篮球比赛,是忠实的NBA球迷,他常常幻想自己那肥硕的身躯也能飞起扣篮。另外,他对篮球教练工作也情有独钟,特别是对比赛的战术,投篮选择方面也是很有研究,下面就是威威猫研究过的一个问题:
一场NBA篮球比赛总共48分钟,假如我们现在已经知道当前比分 A:B,A代表我方的比分,B代表对方的比分,现在比赛还剩下t秒时间。我们简单的认为双方各自进攻一次的时间皆固定为15秒(不到15秒则进攻不得分),且为交替进攻,即我方进攻一次,接着对方进攻,依次循环。
进攻有三种选择方式:(这里不考虑命中率)
1、造犯规,(假设都两罚一中)得1分;
2、中距离投篮 得2分;
3、三分球 得3分。
为了简化问题,假设在对方回合,由于我方防守比较好,只让对手得1分,且为固定,即对方的进攻回合就为每回合得1分。现在比赛进入最后关头,接下来第一个回合是我方进攻,现在威威猫想要知道教练有多少种不同的选择能使我方可能赢得比赛(可能的意思就是不考虑命中率的情况)。
Input
输入有多组数据(不超过250组);
每组数据包含3个整数A,B和t,其中A和B 表示当前的比分(0 <= A, B <= 200),t表示还剩多少时间(单位秒 0 <= t <= 600)。
Output
请输出可行的方案数,每组数据输出占一行。
Sample Input
88 90 50
Sample Output
6
Hint
样例解析:
当前比分是88:90,还剩50秒则对方还最多有一次进攻机会(最后5秒进攻不成功),我方有两次,对方的最终得分将是91,
我方至少在两回合中拿到4分才能胜利,所以所有方案数是6种,即:
第一球 第二球
1 3
2 2
2 3
3 1
3 2
3 3
#include <iostream>
#include <stdio.h>
#include <memory.h>
using namespace std;
typedef long long ll;
int a,b,t;
long long dp[25][100];//dp[i][j]:在第i回合拿到j分的方案数
int main() {memset(dp,0,sizeof(dp));dp[1][1]=1;dp[1][2]=1;dp[1][3]=1;for(int i=2;i<=20;i++){for(int j=i-1;j<=3*(i-1);j++){dp[i][j+1]+=dp[i-1][j];dp[i][j+2]+=dp[i-1][j];dp[i][j+3]+=dp[i-1][j];}}while(~scanf("%d%d%d",&a,&b,&t)){if(t<15){if(a<=b)printf("0\n");else printf("1\n");continue;}int r=(t/15)/2;//r:回合数 b+=r;if((t/15)%2==1)r+=1;long long ans=0;int d;//获胜最少需要的分数 if(b>a){d=b-a+1;}else{d=r;}for(int i=d;i<=3*r;i++){ans+=dp[r][i];}printf("%lld\n",ans);}return 0;
}
动态规划 || 威威猫系列故事——篮球梦 (类似背包)相关推荐
- 威威猫系列故事——篮球梦
威威猫系列故事--篮球梦 Time Limit: 300/100 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others) Total ...
- HDU 威威猫系列故事——篮球梦
威威猫系列故事--篮球梦 Time Limit: 300/100 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Others) Total ...
- HDU 威威猫系列故事——篮球梦
Problem Description 威威猫十分迷恋篮球比赛,是忠实的NBA球迷,他常常幻想自己那肥硕的身躯也能飞起扣篮.另外,他对篮球教练工作也情有独钟,特别是对比赛的战术,投篮选择方面也是很有研 ...
- HDU-4504 威威猫系列故事——篮球梦
#include <iostream> #include <cstdio> #include <cstring>using namespace std;const ...
- hdu4504 威威猫系列故事——篮球梦 解题报告
<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255) ...
- 动态规划位置hdu 4540 威威猫系列故事——打地鼠(动态规划)
题记:写这篇博客要主是加深自己对动态规划位置的认识和总结实现算法时的一些验经和训教,如果有错误请指出,万分感谢. 威威猫系列故事--打地鼠 Time Limit: 300/100 MS (Java/O ...
- HDU-4540 威威猫系列故事——打地鼠 (动态规划)
威威猫系列故事--打地鼠 Time Limit: ...
- HDU 4540 威威猫系列故事――打地鼠(DP)
D - 威威猫系列故事――打地鼠 Time Limit:100MS Memory Limit:32768KB 64bit IO Format:%I64d & %I64u Sub ...
- 【腾讯第二届校园编程马拉松】HDU-4525,威威猫系列故事——吃鸡腿
原题传送门:威威猫系列故事--吃鸡腿 题目如下(添加了部分陷阱提示,以加粗加下划线显示) Problem Description 威威猫不是一只普通的猫,普通的猫喜欢吃鱼,但威威猫最喜欢吃鸡腿.他每天 ...
最新文章
- Android 定制RadioButton样式
- python3.6.5下载-Python
- Redis-11使用 watch 命令监控事务
- android rtsp协议转http协议_网络协议HTTP 协议(一)
- matlab控制realsense,RealSense开发学习--1.初识RealSense
- Java界面编程—事件的种类
- java mdpi_如何使用drawable兼容所有屏幕尺寸(idpi,mdpi,hdpi,xhdpi,xxhdpi)
- 华为搭载鸿蒙2.0系统的手机,华为官方:鸿蒙系统2.0上线,手机能否搭载鸿蒙操作系统?...
- Hadoop报错:could only be replicated to 0 nodes, instead of 1
- html表格ppt,HTML表格.ppt
- 程序员日常工作英文记录
- 以撒的结合-重生 n项 修改器
- 为什么要进行傅立叶变换?傅立叶变换究竟有何意义?
- MySQL基础学习(尚硅谷 婷姐)自学笔记_001
- matlab八节点六面体程序,八节点六面体等参数元计算程序
- Dapper大规模分布式系统问题跟踪系统
- mac火狐浏览器不能打开任何网址问题解决方案!
- ARM汇编之加载寄存器
- 数据分析行业分析:四个模型
- 1W存一年和两个5000存一年,收益有区别吗?