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,预处理相关推荐

  1. 2020年百度之星·程序设计大赛-初赛一

    Pro.ID 1001 Drink 题解 1002 GPA 题解 1003 Dec 题解 1004 Civilization 1005 Rotate 题解 1006 Matrix 1007 Mosqu ...

  2. 2020 年百度之星·程序设计大赛 - 初赛一 Civilization BFS广搜

    problem Civilization Accepts: 619 Submissions: 2182 Time Limit: 6000/3000 MS (Java/Others) Memory Li ...

  3. 2020 年百度之星·程序设计大赛 - 初赛一 GPA DFS深搜

    problem GPA Accepts: 1554 Submissions: 3947 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 327 ...

  4. 2020 年百度之星·程序设计大赛 - 初赛一 Drink

    Problem Description 我们有 nn 种不同的饮料,每种饮料有无限多瓶,第 ii 种饮料一瓶提供 x[i]x[i] 毫升的水分,包含 y[i]y[i] 卡路里. 现在我们需要选择一种饮 ...

  5. 2020 年百度之星程序设计大赛 - 初赛二

    Poker Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others) Total Subm ...

  6. 2020 年百度之星·程序设计大赛 - 初赛一题解

    Drink 对于每一种饮料,都可以算出最少需要多少瓶,从而知道最少摄入多少卡路里,从中找个最优值. #include <iostream> #include <cstdio>u ...

  7. 1001. Poker (思维 / 模拟)(2020年百度之星*程序设计大赛-初赛二)

    传送门 思路: 嗐,又是这种模拟题,每次都不长记性看数据范围,非得傻傻的去循环模拟T一次才知道思考.呜呜呜太菜了. 既然每次至少拿出m,且求的是最多次数,那我们每次就拿m出来. 先将m * p%上取整 ...

  8. 2020年百度之星·程序设计大赛 - 初赛一(前三题)

    文章目录 Drink[贪心] 题目描述 测试样例 解题思路 赛时AC代码 赛后优化AC代码 总结: GPA[枚举] 题目描述 测试样例 解题思路 赛时WA代码 赛时AC代码 总结: Dec[反向dp+ ...

  9. 2020 年百度之星·程序设计大赛 - 初赛三-Discount

    Discount Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others) Total Subm ...

最新文章

  1. grep 显示搜索的关键字相关的行信息
  2. 1.2.6 错题整理(组成原理)
  3. css模块化配置---webpack4+less
  4. 基础集合论 第一章 7 交集 8 差集
  5. yagmail群发邮件
  6. 利用IDA Pro修改51单片机bin文件
  7. getch方法_C语言中getch()函数详解(附实例)
  8. 计算机与信息技术基础上机指导答案,信息技术基础学习指导——实验和习题解答(第3版)...
  9. 【SEU程序设计课笔记】 Mooc - Chapter 6 - (EX) - 泰勒展开求sin(x)/计算PI的近似值
  10. 数字图像处理实验(九):meanshift跟踪算法
  11. in作为介词的用法_介词in,on,at的具体用法与区分
  12. JSON与csv哪一个更自描述_徒步进藏和骑行进藏旅行,哪一个更辛苦
  13. CAMP的Python实现——金融大数据股票分析
  14. 只是一个文件节点类为了项目的数据处理
  15. 树莓派控制16路PWM输出的PCA9685模块
  16. 去掉dt和dd默认间隔的方法
  17. 使用Python对excel中的数据进行处理
  18. 知识图谱可视化应用研究现状文献综述
  19. 江南百景图显示服务器错误,江南百景图通讯失败请保持网络畅通并重试
  20. 蝉知CMS本地迁移到服务器具体步骤

热门文章

  1. 圆上的定理 —— 圆周角定理与相交弦定理
  2. 计算机的组成 —— 耳机与音响
  3. numpy 常用api(四)
  4. Python基础 —— dict
  5. python 字符串加密 唯一数字_python实现字符串加密 生成唯一固定长度字符串
  6. python新手入门代码-介绍十个Python小案例,新手入门就在这里
  7. python使用-Python 应该怎么去练习和使用?
  8. python工资一般多少西安-西安Python的就业方向有哪些?
  9. python画曲线图-python绘制多个曲线的折线图
  10. 专科python应届生工资多少-阿里巴巴达摩院招聘应届生