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

1005 继续(3n + 1)猜想

卡拉兹(Callatz)猜想已经在1001中给出了描述。在这个题目里,情况稍微有些复杂。

当我们验证卡拉兹猜想的时候,为了避免重复计算,可以记录下递推过程中遇到的每一个数。例如对 n=3 进行验证的时候,我们需要计算 3、5、8、4、2、1,则当我们对 n=5、8、4、2 进行验证的时候,就可以直接判定卡拉兹猜想的真伪,而不需要重复计算,因为这 4 个数已经在验证3的时候遇到过了,我们称 5、8、4、2 是被 3“覆盖”的数。我们称一个数列中的某个数 n 为“关键数”,如果 n 不能被数列中的其他数字所覆盖。

现在给定一系列待验证的数字,我们只需要验证其中的几个关键数,就可以不必再重复验证余下的数字。你的任务就是找出这些关键数字,并按从大到小的顺序输出它们。

输入格式:

每个测试输入包含 1 个测试用例,第 1 行给出一个正整数 K (<100),第 2 行给出 K 个互不相同的待验证的正整数 n (1<n≤100)的值,数字间用空格隔开。

输出格式:

每个测试用例的输出占一行,按从大到小的顺序输出关键数字。数字间用 1 个空格隔开,但一行中最后一个数字后没有空格。

输入样例:

6
3 5 6 7 8 11

输出样例:

7 6

代码长度限制 16 KB
时间限制 400 ms
内存限制 64 MB

 

解题思路

我第一次读这个题目没有太读懂,文字描述了一大堆,其实这个和1001 (3n + 1)猜想这道题有所联系,如果你没做过这道题或者忘记了,可以看看以下解释

卡拉兹(Callatz)猜想:
对任何一个正整数 n,如果它是偶数,那么把它砍掉一半;如果它是奇数,那么把 (3n+1) 砍掉一半。这样一直反复砍下去,最后一定在某一步得到 n=1。

了解到了以上猜想,我们来看看这道题到底什么意思。它说当对n = 3进行验证时,需要计算到3、5、8、4、2、1,我第一次看这个题目的时候就有疑惑了,难道10,16你不是在奇数的时候也计算了吗?仔细想想,这道题意思是砍一半才得到的数才是需要计算到的数,也就是你如果是奇数计算得到的数是不算的。你只要明白了这个其实就差不多快做出来了。也就是给你一组数,让你分别遍历这组数,计算需要计算到的数,打印这组数没有重叠的部分。

基本步骤:

  1. 定义一个很大的数组,如果是需要计算到的数就在索引为它的位置上置1,如果不是则置0。
  2. 将这组数按从大到小排序。
  3. 依次遍历这组数将数组为0的数打印出来。

 

AC代码

#include <bits/stdc++.h>
using namespace std;int a[400000] = {0};void While(int n)
{while (n != 1){if (0 == n % 2){n /= 2;a[n] = 1;}else{n = 3 * n + 1;}}
}int main()
{vector<int> v;int n = 0;int x = 0;cin >> n;while (n--){cin >> x;While(x);v.push_back(x);}sort(v.begin(), v.end(), greater<int>());int flag = 0;int sz = v.size();for (int i = 0; i < sz; i++){if (0 == a[v[i]]){cout << (flag == 0?"":" ") << v[i]; flag++;}}return 0;
}

相关文章:

1005 继续(3n + 1)猜想

卡拉兹(Callatz)猜想已经在1001中给出了描述。在这个题目里&#xff0c;情况稍微有些复杂。 当我们验证卡拉兹猜想的时候&#xff0c;为了避免重复计算&#xff0c;可以记录下递推过程中遇到的每一个数。例如对 n3 进行验证的时候&#xff0c;我们需要计算 3、5、8、4、2、1&a…...

VMware15配置NAT模式联通网络

最近为了测试C# 开发的桌面应用程序悬浮球的兼容性&#xff0c;在虚拟机上安装了win7系统和xp系统&#xff0c;之前也安装过黑苹果系统&#xff0c;但是win系统倒是第一次安装&#xff0c;在win7系统联网的时候&#xff0c;踩了一些坑&#xff0c;整理纪录一下。 设置主物理机配…...

doPost的实际使用

目录 前言 一、doPost是什么&#xff1f; 二、使用步骤 1.doPost的请求方法 2.需要引入依赖 总结 前言 本章主要记录一下doPost的请求公用方法的使用。 一、doPost是什么&#xff1f; 它其实就是一个http的post请求方式。 二、使用步骤 1.doPost的请求方法 当我们系…...

2017年MathorCup数学建模A题流程工业的智能制造解题全过程文档及程序

2017年第七届MathorCup高校数学建模挑战赛 A题 流程工业的智能制造 原题再现&#xff1a; “中国制造 2025”是我国制造业升级的国家大战略。其技术核心是智能制造&#xff0c;智能化程度相当于“德国工业 4.0”水平。“中国制造 2025”的重点领域既包含重大装备的制造业&…...

HNU-电子测试平台与工具2-数模转换

数模转换实验 计科XXXX wolf 工程文件我也一并上传了 D级任务 一.实验任务 对74194进行仿真验证&#xff0c;掌握Quartus仿真的基本原则和常规步骤&#xff0c;记录移位寄存器的数据读写&#xff0c;并描述仿真波形&#xff0c;分析结果。 二.实验过程 1.电路连接 2.功能…...

CentOS7安装Telnet客户端和服务端和使用方式

在执行telnet时会提示命令不存在。Telnet服务的配置步骤如下:一、检测是否安装telnet软件包&#xff08;通常要两个&#xff09;1、telnet-client (或 telnet)&#xff0c;这个软件包提供的是 telnet 客户端程序&#xff1b;2、telnet-server 软件包&#xff0c;这个才是真正的…...

脂肪毒性的新兴调节剂——肠道微生物组

谷禾健康 肠道微生物组与脂质代谢&#xff1a;超越关联 脂质在细胞信号转导中起着至关重要的作用&#xff0c;有助于细胞膜的结构完整性&#xff0c;并调节能量代谢。 肠道微生物组通过从头生物合成和对宿主和膳食底物的修饰产生了大量的小分子。 最近的研究表明&#xff0c;由…...

【JavaSE系列】 第九节 —— 多态那些事儿

文章目录 前言 一、多态的概念 二、向上转型和向下转型 2.1 向上转型 2.2 什么是向上转型 2.3 三种常见的向上转型 2.3.1 直接赋值 2.3.2 作为方法的参数 2.3.3 作为方法的返回值 2.4 向下转型&#xff08;这个了解即可&#xff09; 三、方法重写 3.1 方法重写的…...

ego微商小程序项目-测试步骤

文章目录 1. 需求分析和评审2. 编写测试计划和测试方案2.1 ego小程序测试计划2.1.1 项目简介2.1.2 项目任务2.1.3 项目风险2.1.4 测试方案2.1.5 测试实施2.1.6 测试管理2.1.7 附录资料3. 编写测试用例和评审3.1 功能测试用例设计3.1.1 总-整体把控3.1.2 分- 拆分细化3.2 测试用…...

华为OD机试用Python实现 -【报数游戏】2023Q1 A卷

华为OD机试题 本篇题目:报数游戏题目输入输出示例 1输入输出示例 2输入输出Code代码编写思路最近更新的博客 华为od 2023 | 什么是华为od,od 薪资待遇,od机试题清单华为OD机试真题大全,用 Python 解华为机试题 | 机试宝典【华为OD机试】全流程解...

Plsql使用

登录登录system用户&#xff0c;初始有两个用户sys和system&#xff0c;密码是自己安装oracle数据库时写的&#xff0c;数据库选择orcl创建用户点击user,右键新增填写权限关于3个基本去权限介绍&#xff1a; connect : 基本操作表的权限&#xff0c;比如增删改查、视图创建等 r…...

小丑改造计划之四线程控制

1.线程有哪些优点&#xff0c;缺点&#xff1f; 1.优点&#xff1a; 创建线程的代价比较小 线程切换比进程的切换&#xff0c;操作系统要做的事少 线程比进程占用的资源要少 缺点&#xff1a; 子线程可能会影响主线程&#xff0c;健壮性不如进程 编写多线程比单线程难&#xff…...

Spring注册Bean的几种方式

通过XML配置注册Bean spring-config.xml <!--方式一&#xff1a;声明自定义的bean,没有设置id,id默认为全类型#编号--><bean id"cat" class"com.rzg.entity.Cat"/><bean class"com.rzg.entity.Cat"/>public class SpringApp…...

Egg:使用joi进行参数校验以及注册接口小demo

目录 前言&#xff1a; 准备工作&#xff1a; 前端代码&#xff1a; 后端目录截图&#xff1a; 1.获取参数 2.校验参数 3.查询数据库中是否已经存在该用户 4.用户入库 5.测试一哈 添加用户成功 同样的用户名再注册一遍 ​编辑总结&#xff1a; 前言&#xff1a; 在阅…...

天梯赛训练L1-016(查验身份证)

目录 1、L1-016 查验身份证 2、如果帮助到大家了&#xff0c;希望大家一键三连&#xff01;&#xff01;&#xff01; 1、L1-016 查验身份证 分数 15 题目通道 一个合法的身份证号码由17位地区、日期编号和顺序编号加1位校验码组成。校验码的计算规则如下&#xff1a; 首…...

技术方案评审

目录 参考一、流程&规范二、评审维度组件选型性能可伸缩性灵活性可扩展性可靠性安全性兼容性弹性处理事务性可测试性可运维性监控三、方案模板背景目标整体架构业务流程接口定义数据库表功能实现测试计划人力排期Check List整体评估<...

Python机器学习库scikit-learn在Anaconda中的配置

本文介绍在Anaconda环境中&#xff0c;安装Python语言scikit-learn模块的方法。 scikit-learn库&#xff08;简称sklearn&#xff09;是一个基于Python语言的机器学习库&#xff0c;提供了各种机器学习算法和相关工具&#xff0c;包括分类、回归、聚类、降维、模型选择和预处理…...

yarn init 没有 ts 类型声明

yarn 版本为 3. 的初始化项目里&#xff0c;我们下载的包会发现没有 ts 类型提示。那么跟着我做这几个命令&#xff0c;就可以轻松搞定&#xff0c;具体原因我就不贴了&#xff0c;如果有兴趣可以评论问这里只写 vscode 没有提示的修复方式yarn add typescript -Dyarn dlx yarn…...

孩子喜欢打人父母要怎么引导?听听专家的小建议

随着人们生活水平的提高。有些孩子被父母宠坏了&#xff0c;不仅脾气暴躁&#xff0c;还喜欢打人。面对这种情况&#xff0c;许多家长会选择暴制暴&#xff0c;导致孩子更崇尚暴力。被打后&#xff0c;孩子不仅没有悔改&#xff0c;而且变得更糟。即使孩子被说服了&#xff0c;…...

Hive中order by,sort by,distribute by,Cluster by

order by 对数据进行全局排序, 只有一个reducer Task, 效率低 mysql中strict模式下, order by必须要有limit, 不然会拒绝执行. 对于分区表, 必须显示指定分区字段查询。 sort by 可以有多个reduce Task(以distribute by后的字段个数为准) 每个reduce Task内部数据有序, 但…...

FunClip终极指南:三步完成本地AI视频剪辑与智能处理高效工作流

FunClip终极指南&#xff1a;三步完成本地AI视频剪辑与智能处理高效工作流 【免费下载链接】FunClip Open-source, accurate and easy-to-use video clipping tool, LLM based AI clipping intergrated || 开源、精准、方便的视频切片工具&#xff0c;集成了大语言模型AI智能剪…...

7维度解析:专业设计师的开源字体解决方案

7维度解析&#xff1a;专业设计师的开源字体解决方案 【免费下载链接】source-han-serif-ttf Source Han Serif TTF 项目地址: https://gitcode.com/gh_mirrors/so/source-han-serif-ttf 如何评估一款开源中文字体的技术价值&#xff1f; 在数字设计领域&#xff0c;字…...

【AI大模型】----大模型后端工程实战:从架构落地到业务赋能---【第三章 】 Prompt工程与输出控制

第三章 Prompt工程与输出控制 3.1 Prompt工程核心原理与设计原则 Prompt工程是让大模型精准理解需求、输出符合预期内容的核心技术&#xff0c;其本质是通过设计合理的输入文本&#xff0c;引导模型生成符合业务要求的结果。 3.1.1 核心设计原则 明确性&#xff1a;需求描述清晰…...

解码像素,探寻隐匿——CTF-03图片隐写学习心得

CTF-03聚焦图片隐写专项学习&#xff0c;是从基础安全知识迈向数据隐藏与取证实战的重要进阶。通过本次学习&#xff0c;我系统掌握了图片隐写的核心原理、常见工具与实操技巧&#xff0c;不仅深化了对“数据隐匿”攻防思维的理解&#xff0c;更提升了对图片文件的深度分析与信…...

域适应实战:如何用Python快速实现图像风格迁移(附代码)

域适应实战&#xff1a;Python实现图像风格迁移的工程化解决方案 当你在巴黎街头用手机拍摄埃菲尔铁塔时&#xff0c;是否想过让它瞬间拥有梵高《星月夜》的笔触质感&#xff1f;这种看似魔法的技术背后&#xff0c;是域适应技术在计算机视觉领域的精妙应用。不同于简单的滤镜叠…...

GME-Qwen2-VL-2B助力AIGC内容创作:自动为图片生成创意文案与故事

GME-Qwen2-VL-2B助力AIGC内容创作&#xff1a;自动为图片生成创意文案与故事 你有没有过这样的经历&#xff1f;面对一张精心拍摄的照片&#xff0c;却怎么也憋不出几句像样的文案。或者&#xff0c;看着一张充满故事感的图片&#xff0c;脑海里思绪万千&#xff0c;落到笔尖却…...

StructBERT-Large本地化部署实战:无需联网、不传数据、隐私安全的语义匹配解决方案

StructBERT-Large本地化部署实战&#xff1a;无需联网、不传数据、隐私安全的语义匹配解决方案 你是不是经常需要判断两句话是不是一个意思&#xff1f;比如&#xff0c;检查用户提交的答案是否和标准答案一致&#xff0c;或者判断两篇新闻稿是不是在说同一件事。过去&#xf…...

影墨·今颜效果实测:100张生成图中98.3%通过小红书内容审核标准

影墨今颜效果实测&#xff1a;100张生成图中98.3%通过小红书内容审核标准 1. 真实效果惊艳展示 「影墨今颜」作为基于FLUX.1-dev引擎的高端AI影像系统&#xff0c;在实际测试中展现出了令人印象深刻的效果表现。我们进行了严格的批量测试&#xff0c;生成100张不同风格的人像…...

网易云音乐评论数据分析:用Python爬取+可视化热门歌曲情感倾向

网易云音乐评论数据挖掘&#xff1a;从爬取到情感分析的完整实战指南 音乐平台的用户评论蕴含着丰富的情感价值和商业洞察。作为国内领先的音乐社区&#xff0c;网易云音乐的海量评论数据对产品经理优化功能、市场人员分析用户偏好具有重要价值。本文将系统性地介绍如何通过Pyt…...

ApiPost实战指南:从接口创建到自动化测试的全流程解析

1. 从零开始创建你的第一个API接口 作为一个常年和API打交道的开发者&#xff0c;我深知新手第一次接触接口工具时的迷茫。ApiPost作为一款国产的API开发工具&#xff0c;用起来确实比Postman更顺手&#xff0c;特别是对中文用户特别友好。下面我就带你一步步创建第一个接口&am…...