当前位置: 首页 > ops >正文

lanqiaoOJ 652:一步之遥 ← 扩展欧几里得定理

【题目来源】
https://www.lanqiao.cn/problems/652/learning/

【题目背景】
本题为
填空题,只需要算出结果后,在代码中使用输出语句将所填结果输出即可。

【题目描述】
从昏迷中醒来,小明发现自己被关在X星球的废矿车里。矿车停在平直的废弃的轨道上。
他的面前是两个按钮,分别写着“F”和“B”。
小明突然记起来,这两个按钮可以控制矿车在轨道上前进和后退。按 F,会前进 97 米。按 B 会后退 127 米。
透过昏暗的灯光,小明看到自己前方 1 米远正好有个监控探头。
他必须设法使得矿车正好停在摄像头的下方,才有机会争取同伴的援助。
或许,通过多次操作 F 和 B 可以办到。
矿车上的动力已经不太足,黄色的警示灯在默默闪烁...每次进行 F 或 B 操作都会消耗一定的能量。
小明飞快地计算,至少要多少次操作,才能把矿车准确地停在前方 1 米远的地方。
请填写为了达成目标,
最少需要操作的次数

【算法分析】
● 本题本质是求解 97x+127y=1。
● 本题利用扩展欧几里得方程(
https://blog.csdn.net/hnjzsyjyj/article/details/147673627)可求解。

【算法代码】

#include <bits/stdc++.h>
using namespace std;int exgcd(int a,int b,int &x,int &y) {if(b==0) {x=1,y=0;return a;}int d=exgcd(b,a%b,y,x);y-=a/b*x;return d;
}int main() {int a=97,b=127;int x,y;exgcd(a,b,x,y);cout<<abs(x)+abs(y)<<endl;return 0;
}/*
out:97
*/





【参考文献】
https://blog.csdn.net/hnjzsyjyj/article/details/147673627
https://blog.csdn.net/hnjzsyjyj/article/details/147845970



 

http://www.xdnf.cn/news/6095.html

相关文章:

  • ESP32-S3R8 使能PSRAM内存
  • 【嵌入式笔记】Modbus TCP
  • 鬼泣:蓄力攻击总结
  • 《AI大模型应知应会100篇》第63篇:AutoGPT 与 BabyAGI:自主代理框架探索
  • 计算机网络:怎么理解调制解调器的数字调制技术?
  • 《AI驱动的智能推荐系统:原理、应用与未来》
  • Java面试八股Spring篇(4500字)
  • 某某霸翻译逆向分析[JS逆向]
  • 计算机系统概述——了解冯诺伊曼 CPI相关公式
  • 基于Qt的OSG三维建模
  • 【Redis实战篇】秒杀优化
  • 使用 hover-class 实现触摸态效果 - uni-app 教程
  • 数字信号处理-大实验1.2
  • 一文掌握六个空转数据库
  • 编译支持CUDA-aware的OpenMPI
  • 数字化转型 - 标准化
  • MySQL锁机制全面解析:从原理到实践的死锁防治指南
  • C++23 ranges::to:范围转换函数 (P1206R7)
  • LeRobot 框架的核心架构概念和组件(中)
  • 深度学习中的查全率与查准率:如何实现有效权衡
  • CS4334立体声D/A转换器:为高品质音频设计提供低成本的解决方案
  • 音频分类的学习
  • css设置文字两端对齐text-align:justify不起作用的解决方法
  • HTML应用指南:利用POST请求获取全国圆通快递服务网点位置信息
  • ​​金融合规革命:​​R²AIN SUITE 如何重塑银行业务智能​
  • 入侵检测SNORT系统部署过程记录
  • 数据结构与算法-双向链表专题
  • Spring AI 集成 Mistral AI:构建高效多语言对话助手的实战指南
  • 毕业论文,如何区分研究内容和研究方法?
  • C#中的dynamic与var:看似相似却迥然不同