蓝桥杯OJ213买不到的数目【蓝桥杯省赛真题】【动态规划】

题目:

https://www.lanqiao.cn/problems/213/learning/?page=1&first_category_id=1&name=%E4%B9%B0%E4%B8%8D%E5%88%B0%E7%9A%84&sort=problem_id&asc=1&tag_relation=intersectionhttps://www.lanqiao.cn/problems/213/learning/?page=1&first_category_id=1&name=%E4%B9%B0%E4%B8%8D%E5%88%B0%E7%9A%84&sort=problem_id&asc=1&tag_relation=intersection

方法一:可执行代码:【直接找规律硬凑(尝试几遍凑规律:a*b-(a+b)】

cpp 复制代码
 #include <bits/stdc++.h>
 using namespace std;
 int main()
 {
   long long n=0,m=0;cin>>n>>m;
   if(n==1 || m==1) cout<<1;
   else if(n%m!=0 && m%n!=0) cout<<(n*m-(n+m));
   else if(n%m==0) cout<<(n-1);
   else if(m%n==0) cout<<(m-1);
   // 请在此输入您的代码
   return 0;
 }

方法二:可执行代码:【使用动态规划找状态转移方程: if(dpi-n || dpi-m){ dpi=true;}】

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
const int N=1e6+10;
bool dp[N];
int main(){
long long n=0,m=0,ans=0;cin>>n>>m;
dp[0]=true;
dp[n]=true;
dp[m]=true;
for(int i=0;i<=n*m;i++){
  if(dp[i-n] || dp[i-m]){
     dp[i]=true;
  }
}
int max=0;
for(int i=0;i<=n*m;i++){
	if(dp[i]==false && i>max) max=i;
} 
cout<<max; 
  return 0;
}
相关推荐
微功夫信息技术7 小时前
分层多智能体强化学习驱动的非急救转运公平 - 效率统一调度系统研究与实践
人工智能·学习·算法·动态规划
aqiu1111112 天前
【并查集 / 图论】蓝桥云课 - 魔法大陆的城市群(求无向图连通块数量)题解
蓝桥杯·图论
辰烨chenye2 天前
LeetCode Hot 100 题解 · 动态规划篇
算法·leetcode·动态规划
aqiu1111112 天前
【LeetCode 902】最大为 N 的数字组合 - 详细题解与数位组合思路
数据结构·算法·leetcode·蓝桥杯·数位dp
a187927218312 天前
【算法】动态规划第四篇:背包收官——min 哨兵、计数世界与组合排列分水岭
算法·leetcode·动态规划·dp·01背包·算法讲解·决策合并
a187927218313 天前
【算法】动态规划第三篇:背包第一课——贪心之死与正序倒序开关
算法·leetcode·动态规划·贪心·dp·暴力·算法讲解
a187927218313 天前
【算法】动态规划第五篇:区间 DP——从“看什么都像背包“到“最后戳谁“
算法·leetcode·动态规划·dp·区间·区间dp·算法讲解
rannn_1113 天前
【力扣hot100】多维动态规划|62、64、5、1143、72
算法·leetcode·动态规划
a187927218313 天前
【算法】动态规划第二篇:双序列 DP 三课——继承、计步与断链
算法·leetcode·动态规划·dp·回溯·暴力·算法讲解
nbsaas-boot3 天前
多智能体系统的架构边界:任务编排、共享状态与故障隔离设计
人工智能·算法·动态规划