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

[保研/考研机试] KY35 最简真分数 北京大学复试上机题 C++实现

题目链接:

最简真分数icon-default.png?t=N6B9https://www.nowcoder.com/share/jump/437195121691719749588

描述

给出n个正整数,任取两个数分别作为分子和分母组成最简真分数,编程求共有几个这样的组合。

输入描述:

每组包含n(n<=600)和n个不同的整数,整数大于1且小于等于1000。

输出描述:

每行输出最简真分数组合的个数。

示例1

输入:

7 3 5 7 9 11 13 15 3 2 4 5 0

输出:

17 2

源代码:

#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;// 辗转相除法求最大公约数
int GCD(int a, int b) {if (b == 0) {return a;}else {return GCD(b, a % b);}
}int main() {int n;while (cin >> n) {if (n == 0) {break; // 输入为0时结束}vector<int> nums; // 存储输入的整数int res = 0; // 存储最简真分数的数量for (int i = 0; i < n; i++) {int temp;cin >> temp;nums.push_back(temp);}sort(nums.begin(), nums.end()); // 对输入的整数进行排序for (int i = 0; i < n; i++) {for (int j = i + 1; j < nums.size(); j++) {if (GCD(nums[i], nums[j]) == 1) {res++; // 若最大公约数为1,则说明是最简真分数,计数加1}}}cout << res << endl; // 输出最简真分数的数量}return 0;
}

思路:

  1. 读入整数 n,代表接下来有 n 个整数。

  2. 使用一个 vector 存储这 n 个整数。

  3. 对 vector 中的整数进行排序,方便后面的计算。

  4. 使用两层循环遍历所有的数对 (nums[i], nums[j]),其中 i < j。

  5. 对每对数分别计算最大公约数,如果最大公约数为 1,则说明这是一个最简真分数,将计数器 res 增加 1。

  6. 输出最终的 res 值,即最简真分数的数量。

提交结果:

编辑切换为居中

添加图片注释,不超过 140 字(可选)

http://www.lryc.cn/news/119676.html

相关文章:

  • 算法备案后,企业需要做什么?合规与执行挑战
  • 云原生应用程序的自动化管理和编排
  • Spring项目整合过滤链模式~实战应用
  • FFmpeg常见命令行(五):FFmpeg滤镜使用
  • 网络编程 tcp udp http编程流程 网络基础知识
  • LaTeX基础学习笔记
  • zookeeper和kafka
  • 服务器无法加载海康sdk依赖的问题
  • brew+nginx配置静态文件服务器
  • JavaFx异常: Not on FX application thread; currentThread = Timer-0
  • 【Django】无法从“django.utils.encoding”导入名称“force_text”
  • docker-compose redis 一直启动失败
  • 使用GUI Guider工具在MCU上开发嵌入式GUI应用 (1) - GUI Guider简介及安装
  • 解决:django设置DEBUG=false时出现的问题
  • 2023-08-10力扣每日一题
  • C#与halcon联合 缩放移动自适应图像
  • 推荐 4 个 yyds 的 GitHub 项目
  • chrome插件开发实例05-页面间通信
  • linux安装ftp
  • 前后端分离------后端创建笔记(上)
  • Java不可变集合详解
  • 常见的JavaScript日常问题
  • css modules的用法和在react项目中的应用
  • 【LangChain概念】了解语言链️:第2部分
  • 步入React前厅 - Css In React
  • OpenCV(三)——图像分割(二)
  • 28.Netty源码之缓存一致性协议
  • 造个轮子-任务调度执行小框架-任务清单执行恢复实现
  • 若依部署前后端
  • 2009年上半年 软件设计师 下午试卷