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

GESP2024年3月认证C++八级( 第二部分判断题(1-5))

孙子定理参考程序:

#include <iostream>
#include <vector>
using namespace std;// 扩展欧几里得算法:用于求逆元
int extendedGCD(int a, int b, int &x, int &y) {if (b == 0) {x = 1; y = 0;return a;}int x1, y1;int gcd = extendedGCD(b, a % b, x1, y1);x = y1;y = x1 - (a / b) * y1;return gcd;
}// 求模逆元:ax ≡ 1 (mod m)
int modInverse(int a, int m) {int x, y;int g = extendedGCD(a, m, x, y);if (g != 1) {throw runtime_error("不存在逆元,模数必须互质");}return (x % m + m) % m; // 保证正数
}// 中国剩余定理实现
int chineseRemainder(const vector<int>& a, const vector<int>& m) {int M = 1;int n = a.size();for (int i = 0; i < n; ++i) {M *= m[i];}int result = 0;for (int i = 0; i < n; ++i) {int Mi = M / m[i];int inv = modInverse(Mi, m[i]);result += a[i] * Mi * inv;}return result % M;
}int main() {// 示例输入vector<int> a = {2, 3, 2}; // 余数vector<int> m = {3, 5, 7}; // 模数(需互质)try {int x = chineseRemainder(a, m);cout << "x ≡ " << x << " mod " << (3 * 5 * 7) << endl;} catch (exception &e) {cout << "错误: " << e.what() << endl;}return 0;
}

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

相关文章:

  • URL混淆与权限绕过技术
  • pta的cpp选择判断题
  • 【C语言编译】编译原理和详细过程
  • 数据库的原子事务
  • Cursor报错Your request has been blocked解决方案
  • JavaSE核心知识点01基础语法01-02(基本数据类型、运算符、运算符优先级)
  • 【信息系统项目管理师-论文真题】2006下半年论文详解(包括解题思路和写作要点)
  • 学习黑客Nmap 命令法诀
  • 深入浅出数据库的函数依赖关系
  • 数据库原理——E-R图的极速省流理解 例题解析
  • 编译与链接
  • APEX和AI Vector免费认证报名流程分享
  • 融智学核心范式的数学表述:融智学范式革命的总括性阐释——一场文明认知的量子跃迁
  • linux 交叉编译报错 ERROR: sdl2 requested but not found
  • Gradio全解20——Streaming:流式传输的多媒体应用(6)——构建视频流目标检测系统
  • 【NLP】29. 高效训练与替代模型:让语言模型更轻、更快、更强
  • 暂停线程的三种方式:join、sleep、yield
  • 教育应用场景下多智能体系统中交互模型的案例迁移
  • 大模型的监督学习和非监督学习
  • linux种文件名usr的含义是什么?
  • General Tutor 提示词延申分析
  • 11.施工监测
  • Gradio全解20——Streaming:流式传输的多媒体应用(4)——基于Groq的带自动语音检测功能的多模态Gradio应用
  • 18. 四数之和-python刷题-灵神
  • 1257: 【基础】马鞍数
  • 力扣hot100 (除自身以外数组的乘积)
  • Pinia状态管理工具速成
  • 认识并理解什么是链路层Frame-Relay(帧中继)协议以及它的作用和影响
  • 【C/C++】无锁编程——compare_exchange_strong
  • 第二章 - 软件质量