2020 年百度之星·程序设计大赛 - 初赛一 Dec 二维DP,预处理
problem
Dec Accepts: 1284 Submissions: 4572
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Problem Description
初始有 a, ba,b 两个正整数,每次可以从中选一个大于 1 的数减 1,最后两个都会减到 1,我们想知道在过程中两个数互质的次数最多是多少。
Input
第一行一个正整数 test(1 \le test \le 1000000)test(1≤test≤1000000) 表示数据组数。
接下来 test 行,每行两个正整数 a, b(1 \le a, b \le 1000)a,b(1≤a,b≤1000)。
Output
对于每组数据,一行一个整数表示答案。
Sample Input
1
2 3
Sample Output
4
样例解释
2 3 -> 1 3 -> 1 2 -> 1 1
solution
- 二维dp,不是减a就是减b,分别从两个状态转移过来,顺便加上当前的gcd,
dp(i,j) = max(dp(i-1,j)+gcd(), dp(i,j-1)+gcd);
- 因为数据都在1e3,所以全部预处理完输出。
- cin会超时!!!
#include<cstdio>
#include<algorithm>
using namespace std;
int dp[1010][1010];
int gcd(int a, int b){return !b?a:gcd(b,a%b);}
int main(){for(int i = 1; i <= 1000; i++){for(int j = 1; j <= 1000; j++){dp[i][j] = max(dp[i-1][j]+(gcd(i,j)==1),dp[i][j-1]+(gcd(i,j)==1));}}int T; scanf("%d",&T);while(T--){int a, b;scanf("%d%d",&a,&b);printf("%d\n",dp[a][b]);}return 0;
}
2020 年百度之星·程序设计大赛 - 初赛一 Dec 二维DP,预处理相关推荐
- 2020年百度之星·程序设计大赛-初赛一
Pro.ID 1001 Drink 题解 1002 GPA 题解 1003 Dec 题解 1004 Civilization 1005 Rotate 题解 1006 Matrix 1007 Mosqu ...
- 2020 年百度之星·程序设计大赛 - 初赛一 Civilization BFS广搜
problem Civilization Accepts: 619 Submissions: 2182 Time Limit: 6000/3000 MS (Java/Others) Memory Li ...
- 2020 年百度之星·程序设计大赛 - 初赛一 GPA DFS深搜
problem GPA Accepts: 1554 Submissions: 3947 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 327 ...
- 2020 年百度之星·程序设计大赛 - 初赛一 Drink
Problem Description 我们有 nn 种不同的饮料,每种饮料有无限多瓶,第 ii 种饮料一瓶提供 x[i]x[i] 毫升的水分,包含 y[i]y[i] 卡路里. 现在我们需要选择一种饮 ...
- 2020 年百度之星程序设计大赛 - 初赛二
Poker Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Total Subm ...
- 2020 年百度之星·程序设计大赛 - 初赛一题解
Drink 对于每一种饮料,都可以算出最少需要多少瓶,从而知道最少摄入多少卡路里,从中找个最优值. #include <iostream> #include <cstdio>u ...
- 1001. Poker (思维 / 模拟)(2020年百度之星*程序设计大赛-初赛二)
传送门 思路: 嗐,又是这种模拟题,每次都不长记性看数据范围,非得傻傻的去循环模拟T一次才知道思考.呜呜呜太菜了. 既然每次至少拿出m,且求的是最多次数,那我们每次就拿m出来. 先将m * p%上取整 ...
- 2020年百度之星·程序设计大赛 - 初赛一(前三题)
文章目录 Drink[贪心] 题目描述 测试样例 解题思路 赛时AC代码 赛后优化AC代码 总结: GPA[枚举] 题目描述 测试样例 解题思路 赛时WA代码 赛时AC代码 总结: Dec[反向dp+ ...
- 2020 年百度之星·程序设计大赛 - 初赛三-Discount
Discount Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Total Subm ...
最新文章
- grep 显示搜索的关键字相关的行信息
- 1.2.6 错题整理(组成原理)
- css模块化配置---webpack4+less
- 基础集合论 第一章 7 交集 8 差集
- yagmail群发邮件
- 利用IDA Pro修改51单片机bin文件
- getch方法_C语言中getch()函数详解(附实例)
- 计算机与信息技术基础上机指导答案,信息技术基础学习指导——实验和习题解答(第3版)...
- 【SEU程序设计课笔记】 Mooc - Chapter 6 - (EX) - 泰勒展开求sin(x)/计算PI的近似值
- 数字图像处理实验(九):meanshift跟踪算法
- in作为介词的用法_介词in,on,at的具体用法与区分
- JSON与csv哪一个更自描述_徒步进藏和骑行进藏旅行,哪一个更辛苦
- CAMP的Python实现——金融大数据股票分析
- 只是一个文件节点类为了项目的数据处理
- 树莓派控制16路PWM输出的PCA9685模块
- 去掉dt和dd默认间隔的方法
- 使用Python对excel中的数据进行处理
- 知识图谱可视化应用研究现状文献综述
- 江南百景图显示服务器错误,江南百景图通讯失败请保持网络畅通并重试
- 蝉知CMS本地迁移到服务器具体步骤