[保研/考研机试] 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://xiahunao.cn/news/1379741.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

online-shop项目相关

一、准备工作 1.vue启动相关 1.下载nodejs 2.进入vue项目文件夹cmd执行命令&#xff1a;npm install (安装环境运行需要的包)npm audit fix启动&#xff1a;npm run dev2.onlineshop 1.新建apps和extra_apps&#xff08;为了其他文件可以引入&#xff0c;创建python package…

Django(Celery+日志)

celery文档参考:http://docs.jinkan.org/docs/celery/ 同步请求&#xff1a;所有逻辑处理、数据计算任务在View中处理完毕后返回response。在View处理任务时用户处于等待状态&#xff0c;直到页面返回结果。异步请求&#xff1a;View中先返回response&#xff0c;再在后台处理…

新手遇到的问题之charles代理

标题新手遇到的问题之charles代理 首先确定手机和电脑在同一个wifi下&#xff0c;之后接着往下走 步骤一&#xff1a;下载charles安装包 步骤二&#xff1a;安装charles 步骤三&#xff1a;首先打开Charles设置Charles的proxy setting&#xff0c; port一般都默认8888&…

一只会鲤鱼打挺的咸鱼翻身历程——DeanDawn_

一只会鲤鱼打挺的咸鱼翻身历程 前言&#xff1a;本篇文章字数为6331&#xff0c;字数较多&#xff0c;建议慢慢品&#xff0c;看谁能get到其中的点(本篇比较杂乱&#xff0c;个人情感抒发较多&#xff0c;心灵鸡汤也是自己苦涩泪水伤感熬出来的。害&#xff0c;原创不易&#…

Charles工具疑难杂症汇总

Charles工具疑难杂症汇总 Charles是一款很好用的抓包工具&#xff0c;但是使用Charles时会遇到各种感觉很莫名其妙的状况&#xff0c;接下来就是针对各种问题给出解决方法~ 一、为什么用charles不能抓到https的包 解决方法&#xff1a; 1、查看是否已勾选ssl功能&#xff0…

Django(缓存系统)

什么是缓存Cache 缓存是一类可以更快的读取数据的介质统称&#xff0c;也指其它可以加快数据读取的存储方式。一般用来存储临时数据&#xff0c;常用介质的是读取速度很快的内存。一般来说从数据库多次把所需要的数据提取出来&#xff0c;要比从内存或者硬盘等一次读出来付出的…

【react】配置React 的开发环境

安装之前要确认你的机器上安装了 node.js 环境包括 npm。如果没有安装&#xff0c;可以到 node.js 的官网下载自己电脑的对应的安装包来安装好环境。Node.js 安装配置菜鸟教程 node自带npm 第一种方法&#xff08;create-react-app&#xff09; 安装好环境以后&#xff0c;…

Mellel 5 for mac(文字处理软件)

Mellel 5 for mac一款非常好用的文字处理软件&#xff0c;Mellel 5版包括所有经典的文本编辑工具&#xff0c;强大&#xff0c;灵活和可靠&#xff0c;它将帮助您撰写书籍&#xff0c;学术论文或博士学位论文&#xff0c;从概述想法到完成手稿。 Mellel 5 for mac安装教程 在本…

bliss android x86,Bliss OS现在可让您基于Android-x86和AOSP在PC上运行Android 10

Bliss OS是一个基于Android-x86项目的开源操作系统&#xff0c;有望让您在任何Linux&#xff0c;Windows或Chromebook PC或平板电脑设备上运行最新的Android 10移动操作系统。 Bliss OS基于AOSP(Android开放源代码项目)和Android-x86项目&#xff0c;提供了许多自定义和主题选项…

nginx跨域步骤详情

此文章只实现在本地开发环境下的应用nginx跨域 1.下载nginx稳定版本 下载地址&#xff1a;nginx: download 2. 配置nginx文件下的nginx.conf 3. 打包 我用的react &#xff0c;打包命令是&#xff1a;npm run bulid , 把打包后的dist文件下的内容复制到下面的文件地址 4…

index.html trend.html

1.jq22模板下载&#xff1a;http://www.jq22.com/jquery-info22538 2.layUI下载&#xff08;layUI-v2.5.5&#xff09;&#xff1a;https://www.layui.com/ 3.jquery下载&#xff08;Development 3.4.1&#xff09;&#xff1a;https://jquery.com/download/ 【网页直接打开文件…

Starlink星链计划能与5G抗衡?看一下马斯克吹过的牛

文章目录 一、Starlink星链计划是什么&#xff1f;1. 卫星发射情况2. 性能测试 二、5G 通信性能1. 通信速度2.通信时延3. 速度快的主要原因4. 系统容量 三、Starlink 与 5G 的对比1. 覆盖范围2. 通信速度 四、Starlink 的优势1. 局部地区的网络服务2. 军事服务3. 未来远景 一、…

docker基础使用

docker下载centos镜像(用作配置jdk环境系统) docker pull centos #版本号可以自己加,默认拉取最新的 docker命令 docker search xxxx 搜索xxxx镜像 docker pull xxxx 下载xxxx镜像&#xff0c;版本号…

Keras--基于VGG16卷积神经网络---猫狗分类

Cats vs. Dogs&#xff08;猫狗大战&#xff09;来源于 Kaggle 上的一个竞赛&#xff0c;内容非常简单&#xff0c; Kaggle 提供了一个猫和狗的数据集&#xff0c;我们需要建立一个算法进行训练&#xff0c;最后这个算法要能准确识别出猫和狗。Kaggle 提供的数据集分为训练集…

软件欺诈的骗局揭露:“替罪羊”究竟是如何构建的?

创建一个能工作的软件产品是很困难的&#xff0c;卖欺诈性的软件产品要容易得多。 声明&#xff1a;本文已获作者Matt Stancliff翻译授权。 作者 | Matt Stancliff 译者 | 苏本如&#xff0c;责编 | 郭芮 头图 | CSDN 下载自东方 IC 出品 | CSDN&#xff08;ID&#xff1a;CSDN…

什么?我要对AI礼貌?人机交互面临的道德漏洞

作者 | 库珀 来源 | 数据实战派 头图 | 付费下载于 IC Photo 如果你在一条道路上行驶&#xff0c;突然前面拐弯处出现一辆无人驾驶汽车&#xff0c;你会继续坚持你的道路优先权&#xff0c;还是让位使它先过去&#xff1f; 目前&#xff0c;我们大多数人在涉及其他人的情况下能…

Docker安装 elasticsearch-head

目录 前言安装elasticsearch-head步骤1&#xff1a;准备1. 安装docker2. 搜索可以使用的镜像。3. 也可从docker hub上搜索镜像。4. 选择合适的redis镜像。 步骤2&#xff1a;拉取elasticsearch-head镜像拉取镜像查看已拉取的镜像 步骤3&#xff1a;创建容器创建容器方式1&#…

猿创征文|瑞吉外卖——管理端_菜品管理_1

个人名片&#xff1a; 博主&#xff1a;酒徒ᝰ. 专栏&#xff1a;瑞吉外卖 个人简介&#xff1a;沉醉在酒中&#xff0c;借着一股酒劲&#xff0c;去拼搏一个未来。 本篇励志&#xff1a;真正的程序员不看参考手册&#xff0c;新手和胆小鬼才会看。 本项目基于B站黑马程序员Jav…

【CSS】CSS 布局——常规流布局

<h1>基础文档流</h1><p>我是一个基本的块级元素。我的相邻块级元素在我的下方另起一行。</p><p>默认情况下&#xff0c;我们会占据父元素 100%的宽度&#xff0c;并且我们的高度与我们的子元素内容一样高。我们的总宽度和高度是我们的内容 内边距…

SpringBoot整合、SpringBoot与异步任务

目录 一、背景描述二、简单使用方法三、原理五、使用自定义线程池六、Async失效情况 一、背景描述 java 的代码是同步顺序执行&#xff0c;当我们需要执行异步操作时我们通常会去创建一个新线程去执行。比如new Thread()。start()&#xff0c;或者使用线程池线程池 new Thread…