CodeForces 651 A Joysticks
1 second
256 megabytes
standard input
standard output
Friends are going to play console. They have two joysticks and only one charger for them. Initially first joystick is charged at a1 percent
and second one is charged at a2 percent.
You can connect charger to a joystick only at the beginning of each minute. In one minute joystick either discharges by 2 percent (if not connected to a charger) or charges by 1 percent (if connected to a charger).
Game continues while both joysticks have a positive charge. Hence, if at the beginning of minute some joystick is charged by 1 percent, it has to be connected to a charger, otherwise the game stops. If some joystick completely discharges (its charge turns to
0), the game also stops.
Determine the maximum number of minutes that game can last. It is prohibited to pause the game, i. e. at each moment both joysticks should be enabled. It is allowed for joystick to be charged by more
than 100 percent.
The first line of the input contains two positive integers a1 and a2 (1 ≤ a1, a2 ≤ 100),
the initial charge level of first and second joystick respectively.
Output the only integer, the maximum number of minutes that the game can last. Game continues until some joystick is discharged.
3 5
6
4 4
5
#include <iostream>
#include <string.h>
#include <stdlib.h>
#include <algorithm>
#include <math.h>
#include <stdio.h> using namespace std;
long long int dp[205][205];
int n,m;
long long int dfs(int x,int y)
{
//cout<<x<<" "<<y<<endl;
if(dp[x][y]!=-1)
return dp[x][y];
if(x-2<0&&y-2>=0)
dp[x][y]=dfs(x+1,y-2)+1;
else if(x-2>=0&&y-2<0)
dp[x][y]=dfs(x-2,y+1)+1;
else
{
dp[x][y]=max(dfs(x+1,y-2),dfs(x-2,y+1));
dp[x][y]++;
} return dp[x][y];
}
int main()
{
memset(dp,-1,sizeof(dp));
for(int i=1;i<=100;i++)
dp[i][0]=0,dp[0][i]=0;
dp[1][1]=0;
scanf("%d%d",&n,&m);
printf("%lld\n",dfs(n,m));
return 0;
}
最新文章
- eclipse中将Maven Dependencies Libraries移除后的恢复办法
- 安装SQL Server 2012 『企业中文版』
- nohup启动java命令导致dubbo无法注册
- C语言+SDL2 图形化编程
- 内存使用空间之swap建置[转]
- 1、Python django 框架下的word Excel TXT Image 等文件的上传
- Guava API学习之Multimap
- QT:用QSet储存自定义结构体的问题——QSet和STL的set是有本质区别的,QSet是基于哈希算法的,要求提供自定义==和qHash函数
- url语法
- Kafka 0.10 KafkaConsumer流程简述
- 做直线不要使用hr
- RocketMQ-quickstart(批量消费问题)
- nginx预防常见攻击
- 2019-04-16 SpringMVC 学习笔记
- 删除 nuget 文件夹内容
- PAT甲级1143 Lowest Common Ancestor【BST】
- Windows to go 慢,更换 user profile 路径
- z-index注意事项
- [LeetCode&;Python] Problem 107. Binary Tree Level Order Traversal II
- jquery插件-fullpage.js