首页
Python
Java
前端
数据库
Linux
Chatgpt专题
开发者工具箱
3n专题
Algorithm学习笔记 --- 3n+1问题
总时间限制: 1000ms 内存限制: 32000kB 描述 3n+1问题是一个简单有趣而又没有解决的数学问题。这个问题是由L. Collatz在1937年提出的。克拉兹问题(Collatz problem)也被叫做hailstone问题、3n+1问题、Hasse算法问题、Kakutani算法问题、Thwaites猜想或者Ulam
阅读更多...
nyoj-1161-3n+1问题
3n+1问题 时间限制: 1000 ms | 内存限制: 65535 KB 难度: 0 描述 对于任意大于一的自然数n,若n为奇数,则将n变为3n+1,否则变为n的一半,经过若干次这样的变换,一定会使n变为1.求输出变换的次数,注 要求次数要对3取余;例如3->10->5->16->8->4->2->1 变换了7次,对3取余的1; n<=109 输入 测试
阅读更多...
HDU The 3n + 1 problem
题目传送门:http://acm.hdu.edu.cn/showproblem.php?pid=1032 我发现自己理解英文表达的数学类的问题总是有各种各样的偏差,这种偏差不是陌生词汇带来的(0_0)……本题的重点在于ij没有说明大小,因此我们需要排下序,可以使用define也可以使用algorithm头文件。 #include<stdio.h>#include<string.h>#inc
阅读更多...
1005继续(3n+1)猜想
记录自己的做题历程! https://pintia.cn/problem-sets/994805260223102976/problems/994805320306507776 思想:用容器vector去装给出的几个数据(结构体),结构体中有数组,用来装过程中路过的数,还有一个count用来记是否被覆盖过,被覆盖则加1,每结束一个数,遍历数组的数据,将vector中
阅读更多...
PAT Basic Level 1001 3n+1猜想 解题思路及AC代码
PAT 1001 害死人不偿命的 3n+1 猜想 1. 题目描述及在线测试位置2. 具体实现2.1 基本思路2.2 AC代码 1. 题目描述及在线测试位置 PAT 1001 害死人不偿命的(3n+1)猜想 2. 具体实现 2.1 基本思路 先判定输入数字n是奇数还是偶数,然后再执行对应的运算:奇数 (3×n+1) / 2 ; 偶数 n / 2循环步骤1,直到n变为1判
阅读更多...
PAT(C语言版)-Basic-1001. 害死人不偿命的(3n+1)猜想
#include<stdio.h>int main(){int n=0;int in;scanf("%d",&in);while(in!=1){n++;if(in%2==0){in/=2;continue;}in=(3*in+1)/2;}printf("%d",n);return 0;} 本题没有难度,考察简单的循环以及判断
阅读更多...
PAT(Basic Level) 1005继续(3n+1)猜想 (25)
卡拉兹(Callatz)猜想已经在1001中给出了描述。在这个题目里,情况稍微有些复杂。 当我们验证卡拉兹猜想的时候,为了避免重复计算,可以记录下递推过程中遇到的每一个数。例如对n=3进行验证的时候,我们需要计算3、5、8、4、2、1,则当我们对n=5、8、4、2进行验证的时候,就可以直接判定卡拉兹猜想的真伪,而不需要重复计算,因为这4个数已经在验证3的时候遇到过了,我们称5、8、4、2是被
阅读更多...
【动态规划】【数学】1388. 3n 块披萨
作者推荐 【动态规划】【字符串】【表达式】2019. 解出数学表达式的学生分数 本文涉及知识点 动态规划汇总 LeetCode1388 3n 块披萨 给你一个披萨,它由 3n 块不同大小的部分组成,现在你和你的朋友们需要按照如下规则来分披萨: 你挑选 任意 一块披萨。 Alice 将会挑选你所选择的披萨逆时针方向的下一块披萨。 Bob 将会挑选你所选择的披萨顺时针方向的下一块披萨。 重复
阅读更多...
害死人不偿命的(3n+1)猜想 (15分)
一、需求 卡拉兹(Callatz)猜想: 对任何一个正整数 n,如果它是偶数,那么把它砍掉一半;如果它是奇数,那么把 (3n+1) 砍掉一半。这样一直反复砍下去,最后一定在某一步得到 n=1。卡拉兹在 1950 年的世界数学家大会上公布了这个猜想,传说当时耶鲁大学师生齐动员,拼命想证明这个貌似很傻很天真的命题,结果闹得学生们无心学业,一心只证 (3n+1),以至于有人说这是一个阴谋,卡拉兹是在
阅读更多...
PTA 7-3N阶楼梯上楼问题(运行超时问题)
输入样例: 3 输出样例: 3 输入样例: 4 输出样例: 5 参考案例: #include <stdio.h>int func(int n)/*子函数*/{if (n == 1 || n == 2)return n;/*返回n值*/elsereturn func(n - 1) + func(n - 2);/*递归求阶层数*/}int main(){int
阅读更多...
poj 1207 The 3n + 1 problem
当我看到题目的时候我就感觉到这是一道彻彻底底的水题,因为很像A+B的作风。。。 但是看完题目我心里想了想:应该没有那么水吧,可能还是要优化的,暴力可能会TLE。。。 但是我暴力过了以后我这样想:。。。。。。。 下面摘抄了一点文字说明: 大致题意: 根据给定的算法,可以计算一个整数的循环数 现在给定一个区间,计算这个区间的所有数的循环数,把最大的循环数输出 PS:输出
阅读更多...
证明:多项式 $g(x)=x^2+x+1$ 整除多项式 $f(x)=x^{3m}+x^{3n+1}+x^{3p+2}$.
设 m , n m,n m,n 和 p p p 为正整数。证明:多项式 g ( x ) = x 2 + x + 1 g(x)=x^2+x+1 g(x)=x2+x+1 整除多项式 f ( x ) = x 3 m + x 3 n + 1 + x 3 p + 2 f(x)=x^{3m}+x^{3n+1}+x^{3p+2} f(x)=x3m+x3n+1+x3p+2. 将 f ( x ) f(x
阅读更多...
1388. 3n 块披萨 动态规划
1388. 3n 块披萨 难度困难104 给你一个披萨,它由 3n 块不同大小的部分组成,现在你和你的朋友们需要按照如下规则来分披萨: 你挑选 任意 一块披萨。Alice 将会挑选你所选择的披萨逆时针方向的下一块披萨。Bob 将会挑选你所选择的披萨顺时针方向的下一块披萨。重复上述过程直到没有披萨剩下。 每一块披萨的大小按顺时针方向由循环数组 slices 表示。 请你返回你可以获得的披萨大小总和
阅读更多...
【转】UVa Problem 100 The 3n+1 problem (3n+1 问题)——(离线计算)
1 // The 3n+1 problem (3n+1 问题) 2 // PC/UVa IDs: 110101/100, Popularity: A, Success rate: low Level: 1 3 // Verdict: Accepted 4 // Submission Date: 2011-05-22 5 // UVa Run Time: 0.032s
阅读更多...