码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
能不能找到规律或者数学公式?能知道随机一个数位于第几排(N几)?例如290
收起
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
微信扫一扫
点击复制链接分享
- 邀请回答
- 编辑 收藏 删除 结题
- 收藏 举报
当前问题酬金
¥ 100 (您已提供 ¥ 20, 还可追加 ¥ 400)
支付方式
扫码支付
14条回答 默认 最新
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
CX0405 2021-06-03 13:51关注290 在13行 想看哪个数在第几行在list.contains()里放几就行
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 1无用举报微信扫一扫
点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容
- 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
往事如风,闲云野鹤 2021-06-02 22:00关注我看出规律来了
第一行一列
第二个两列
第三行三列
然后第一行第一列和第二行第三行第一列是等差数列,差5
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容 - 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
往事如风,闲云野鹤 2021-06-02 22:01关注第二行第二列和第三行第二列是等差数列,值差11
第三行第三列和第四行第三列是等差数列,差17
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容 - 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
中考之前不改名 2021-06-02 23:08关注杨晖三角老变式了
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容 - 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
爱晚乏客游 2021-06-02 23:36关注如果你将函数转过来看,这就是一个二维的数组,6在【0,0】,13在【0,1】。。。,也就是arr数组就是这个表,第几行就是下表(i+j+1)//2就是行数,列数j+1.
所以写了个简单的给你,需要设置一下最大质数表。可以输出具体哪一行哪一列。不过计算质数表需要花时间,这个值最好大一点。
def get_prime(n):#求5-n以内的素数表 IsPrime = [True] * (n + 1) IsPrime[1] = False for i in range(2, int(n ** 0.5) + 1): if IsPrime[i]: for j in range(i * 2, n + 1, i): IsPrime[j] = False return [x for x in range(5, n + 1) if IsPrime[x]] def find(num,max_prime_num): L=get_prime(max_prime_num) Max=len(L)//2 #行数,要保证质数表的个数是这个值得两倍, print() arr=[] a=6 for i in range(0,Max): row=[] r=i*L[i*2] c=L[i*2+1] num0=a+5*i # 每行第一个 row.append(num0) for j in range(1,Max): num_j=num0+c*j row.append(num_j) arr.append(row) flag=True print("在{}行{}列三角形里面结果是".format(Max,Max)) for i in range(len(arr)): for j in range(len(arr[0])): if arr[i][j]==num: #寻找某个数 flag=False print("{}在第{}行,第{}列".format(num,(i+j+1)//2,j+1)) if (flag and i>num//5): print("{}不在表内".format(num)) break find(290,100000) #out #在4795行4795列三角形里面结果是 #290不在表内
实际上,在4795行和列里面,290并不在表中。而412有多处:
412在第29行,第59列
412在第7行,第5列
412在第14行,第2列203就一处:
203在第5行,第5列
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容 - 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
groovy2007 2021-06-03 01:58关注重复的数字怎么办?比如76出现了两次。到底取哪一行的呢?
更新:查了一下资料,对于几百位的大数n,目前没有特别高效的算法,最多可以做到O(n ^ (1/4))。
将原表逆时针旋转90度将得到如下二维矩阵:
6 13 20 27 34 41 48 55 ...
11 24 37 50 63 76 89 102 ...
16 35 54 73 92 111 130 149 ...
21 46 71 96 121 146 171 196 ...
26 57 88 119 150 181 212 243 ...
31 68 105 142 179 216 253 290 ...第x行y列(x和y都从0开始)的数字为 6+5x+7y+6xy。如果知道了x和y,很容易推算出原来的行和列。所以问题就变成了求方程6+5x+7y+6xy = n的整数解,比如n=290则x=5, y=7。根据这篇文章 https://www.alpertron.com.ar/METHODS.HTM#SHyperb 以及 https://math.stackexchange.com/questions/242728/how-to-find-integer-solutions-for-axy-bx-cy-d/242764 最后可以化简为求(6x+7)(6y+5) = 6n-1。根据上面的链接,目前已知的解法就是对6n-1进行因子分解,然后看看x和y是不是整数,每做一次分解(6n-1 = a * b),大概有1/36的概率求得x和y都是整数。所以问题就转化成了对大数6n-1进行分解。如果存在比较小的因子的话,可以逐个尝试。否则,就要用到Pollard's rho算法,可以参考《算法导论》31章,或者网上的一些实现,比如https://www.geeksforgeeks.org/pollards-rho-algorithm-prime-factorization/ 根据维基百科https://en.wikipedia.org/wiki/Pollard's_rho_algorithm,该算法效率约为O(n ^ (1/4)),并且在1980年用了两个小时对一个78位的费马数做了分解。虽然80年至今,计算机的速度提高了几百万倍,也无非相当于在大数后面多加了几个0而已。所以结论是不存在高效算法,除非大数碰巧有一些较小的因子。上述结论还只是针对寻找n出现的任意一个位置,如果要寻找n第一次出现的位置,计算量更大。
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容 - 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
qfl_sdu 2021-06-03 12:56关注研究一下规律每行数据的规律
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容 - 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
CX0405 2021-06-03 13:53关注本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容 - 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
loldota 2021-06-03 14:26关注package main import "fmt" func getPosOfNum(num int32) (row, col int32) { var i int32 for i = 1; i < 65535; i++ { start := calcNumWithPos(i, 1) if (num-start)%(start+i) == 0 { row = i + (num-start)/(start+i) col = (num-start)/(start+i) + 1 return } } return } func getPosOfNumRowMin(num int32) (int32, int32) { maxStartRow := ((num - 6) / 5) + 1 var minRow int32 var minCol int32 var i int32 for i = maxStartRow; i > 0; i-- { start := calcNumWithPos(i, 1) if (num-start)%(start+i) == 0 { row := i + (num-start)/(start+i) if minRow == 0 || minRow > row { minRow = row minCol = (num-start)/(start+i) + 1 } } } return minRow, minCol } func calcNumWithPos(row, col int32) int32 { if row < col { return 0 } if row == col && row == 1 { return 6 } if col == 1 { return calcNumWithPos(1, 1) + (row-1)*5 } return calcNumWithPos(row-col+1, 1) + (calcNumWithPos(row-col+1, 1)+row-col+1)*(col-1) } func main() { fmt.Println(calcNumWithPos(11, 11)) fmt.Println(calcNumWithPos(7, 6)) fmt.Println(getPosOfNum(76)) fmt.Println(getPosOfNumRowMin(76)) }
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容 - 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
风雪一更 2021-06-03 16:59关注思考了10分钟,敲下了5行代码,就这?这也太简单了吧
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容 - 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
风雪一更 2021-06-03 17:07关注计算可得290在第13行第8项,代码简单易懂,建议采纳
<script type="text/javascript"> var arr = [[6]]; for (var i=1;i<1000;i++) { arr.push([]); for (var j=0;j<i;j++) { arr[i].push(arr[i-1][j]+5+6*[j]) } arr[i].push(arr[i-1][arr[i-1].length-1]+7) } console.log(arr); for (var x=0;x<arr.length;x++) { for (var y=0;y<arr[x].length;y++) { if (arr[x][y]==290) { alert(arr[x][y]) alert("第"+(x+1)+"行"+"第"+(y+1)+"项") } } } </script>
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容 - 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
qfl_sdu 2021-06-03 22:32关注数列规律如下:
1.第i行有i列,第i行i列的数据位7i-1
2.数列中的每一列都是等差梳理,第j列的差是6j-1
3.每一行中,第一列的元素是最小的,也就是说,当6i-1 > 需要查找的数时结束。
根据以上规律,可以快速查找到数所在的行和列。C++代码实现如下:
(如有帮助,请给个采纳,谢谢。)
#include <iostream> #include <vector> using namespace std; struct StPostion { int row; int col; }; void main() { int i,j; int nmb; //需要查找的数字 int max; //最多查找的行数 int start;//每一列开始的值 while(true) { vector<StPostion> vpos; //存储满足条件的值 cout << "请输入需要查找的数字:"; cin >> nmb; if (nmb <= 0) //输入小于等于0的数结束程序 { return ; } max = (nmb -1) / 5 +1; //i行有i列个数据 a[i][i] = 7i -1 (n=1~max) //第j列的公差是5j -1 //逐列查找 for (i = 1; i <=max; i++) //列 { start = 7*i-1; for (j = i; j<=max; j++) //行 { if (start + (6*i -1)*(j-i) == nmb) { StPostion st; st.row = j; st.col = i; vpos.push_back(st); } } } if (vpos.size() == 0) { cout << nmb <<"不在数列中" << endl; }else { cout << nmb << "所在的行和列为:" << endl; for (i = 0; i < vpos.size(); i++) { cout << " " << vpos.at(i).row << "行," << vpos.at(i).col << "列" <<endl; } } } }
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容 - 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
朝花夕拾喵 2021-06-04 10:59关注//6 13 20 27 34 6 + 7*(j) //11 24 37 50 11 + 13*(j) //16 35 54 16 + 19*(j) //21 46 21 + 25*(j) = 21 + (7 + 6*i)*j = 6 + 5*i + (7 + 6*i)*j //26 = 6 + 5*i + 7*j + 6*i*j // // // //6 + 5*i #pragma warning(disable:4996) #include<iostream> #include<stdio.h> #include<stdbool.h> void solve() { int n = 0; bool vis = false; scanf("%d", &n); n -= 6; for (int i = 0; i * 5 <= n; i++) { for(int j = 0; 7 * j <= n; j++){ if (5 * i + 7 * j + 6 * i * j == n) { printf("可能在第%d行\n", i + j + 1); //printf("%d %d mmm", i, (n - 5 * i) / 7); vis = true; } } } if (vis == false)printf("该数不在排列中!"); return; } int main() { int a = 10; while (a--) { solve(); } return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容 - 关注
码龄 粉丝数 原力等级 --
- 被采纳
- 被点赞
- 采纳率
Nia618 2021-06-04 13:45关注本次题目没有设计好,我只能先采纳,感谢各位大神的帮助,如果有什么要交流的随时私聊我
本回答被题主选为最佳回答 , 对您是否有帮助呢? 本回答被专家选为最佳回答 , 对您是否有帮助呢? 本回答被题主和专家选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏举报微信扫一扫
点击复制链接分享
评论按下Enter换行,Ctrl+Enter发表内容
报告相同问题?
- 2021-06-02 21:54回答 14 已采纳 290 在13行 想看哪个数在第几行在list.contains()里放几就行
- 2018-10-22 04:52回答 1 已采纳 求最大公约数的算法出错了,这是递归的方法, ``` ll gcd(long long a, long long b) { return a == 0 ? b : gcd(b%a,a); }
- 2022-02-12 15:19回答 4 已采纳 Java(JDK)里面有函数Math,可以实现基本的数学公式,斐波那契数列的通式F(n)=F(n-1)+F(n-2)这个不会在封装的数学计算公式中,但是可以自己实现这个逻辑,明眼人一看这个公式就知道使
- 2021-02-22 16:56文宇肃然的博客 而当水滴在空中的坠落速度达到很大时,由于自身体积而产生一个空气阻力,也即空气摩擦阻力,水滴在空中就已经雾化了。当然雾化的原因是摩擦生热和水汽蒸发!也即是说水滴在速度没有达到能伤人的情.
- 2021-09-27 22:11回答 1 已采纳 g1 = ( exp(x+y) + sqrt(fabs(x+y)) )/(2*PI + 1); g2 = pow( log(sqrt(1+d*d))-exp(2),5/2.0);
- 2022-10-24 14:39回答 1 已采纳 一个%d,怎么有两个变量,那你输出的就是年份了呀,改成 printf("There are %d cows. \n", MyGetCowR(year));
- 2022-08-06 19:28回答 3 已采纳
- 2021-01-18 09:36小傅哥的博客 沉淀、分享、成长,让自己和他人都能有所收获!???? 一、前言 数学离程序员有多近? ifelse也好、for循环也罢,代码可以说就是对数学逻辑的具体实现。所以敲代码的程序员几乎就离不开数学,难易不同而已。 那数学...
- 2022-06-08 09:32回答 1 已采纳 可以以输入的空格键去判断啊,比如123 789 一个空格键就两个数了,按回车键就结束输入了;然后取每个数的第一个数就可以了,可以用字符串的形式输入,合并字串成目标字串,然后用atoi转化成整数型即可
- 2022-07-03 06:50回答 18 已采纳 能否倒推出来取决于随机算法如果是伪随时,存在一定可能倒推出来如果随机算法做到很随机了,那么几乎不可能倒推出来无论哪种情况,都需要知道随机算法的实现细节,才有倒推的可能如果从已知的数据倒推,那么需要大量
- 2022-10-17 19:05回答 2 已采纳 因为你是scanf是整数
- 2020-11-22 08:05weixin_39909366的博客 关注数学,关注AI,关注我们公众号ID:Math-AI我们从高中就开始学正态分布,现在做数据分析、机器学习还是离不开它,那你有没有想过正态分布有什么特别之处?为什么那么多关于数据科学和机器学习的文章都围绕正态...
- 2021-10-20 14:10回答 1 已采纳 你好,matlab有效的变量名只能是字符、数字和下划线,然后首字符一定不能是数字。所以你只能写 S_x = (lambda_x + lambda_y)/2 去掉转义字符\即可
- 2022-04-16 15:16李一恩的博客 智力题在目前的大厂面试中也是非常常见的,这种题的特点是看过一遍就基本能答上来,没看过可能就比较费劲,所以性价比比较高。秋招的小伙伴冲啊
- 2020-01-03 11:30风度78的博客 相信你对变量这个概念并不陌生,数学方程式和编程代码里经常会用到变量。那什么是变量呢?我们在概率中常说的随机变量( random variable)和普通的变量(variable)又有什么...
- 没有解决我的问题, 去提问
悬赏问题
- ¥20 arcgis制做交通拥堵时变图
- ¥15 AD20 PCB板步线 这个要怎么步啊
- ¥50 关于《奇迹世界》1.5版本,数据修改
- ¥15 请问这个问题如何解决(关键词-File)
- ¥50 visual studio 2022和EasyX图形化界面
- ¥15 找一下报错原因,纠正一下
- ¥50 Cox回归模型Nomogram图制作报错
- ¥20 SQL如何查询多级用户的数据
- ¥15 给车牌识别代码加一个识别轮廓长宽比的代码
- ¥30 商品价格预测的transformer模型优化