数学问题
Jeniclala
这个作者很懒,什么都没留下…
展开
-
数学:约瑟夫环:圆圈中最后剩下的数字
解题思路以题目给的代码为例0、1、2、3、4 ,n=5,m=3第一轮:0 1 2 3 4 0 1 2 3 4,删除2,此时3的下标为(0 + 3) % 5 = 3第二轮:3 4 0 1 3 4 0 1,删除0,此时3的下标为(1 + 3) % 4 = 0第三轮:1 3 4 1 3 4,删除4,此时3的下标为(1 + 3) % 3 = 1第四轮:1 3 1 3,删除1,此时3的下标为(0 + 3) % 2 = 1第五轮:3,此时3的下标为0倒着就可以推出规律为pos=(pos+m)%n时间复.原创 2021-08-09 15:36:30 · 118 阅读 · 0 评论 -
JavaScript 数学:二进制中1的个数
参考链接https://www.cnblogs.com/echovic/p/6430668.html描述输入一个整数,输出该数32位二进制表示中1的个数。其中负数用补码表示。示例1 输入:10 返回值:2思路一:如果一个整数不为0,那么这个整数至少有一位是1。如果我们把这个整数减1,那么原来处在整数最右边的1就会变为0,原来在1后面的所有的0都会变成1(如果最右边的1后面还有0的话)。其余所有位将不会受到影响;例如:一个二进制数1100,从右边数起第三位是处于最右边的一个1。减去1后,第三原创 2021-06-19 21:57:30 · 324 阅读 · 0 评论 -
数学:求1+2+3+...+n
描述求1+2+3+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。示例1 输入:5 返回值:15function Sum_Solution(n){ return n*(1+n)/2;}function Sum_Solution(n) { if(n === 1) return 1; return n && n + Sum_Solution(n - 1);}注意:这里retu原创 2021-06-18 10:10:12 · 281 阅读 · 0 评论 -
数学 :数组中7的倍数及包含7的值的个数
描述:输出数组中7的倍数及包含7的值的个数输入:17 14 22输出:2思路:7的倍数利用取余,包含7利用字符串function test(line){ let lines=line.split(' ');//分解为字符串数组 let res=0; for(let i=0;i<lines.length;i++){ if(parseInt(lines[i])%7===0||lines[i].indexOf('7')!=-1){//注意要将字符串数组中的值转原创 2021-06-18 08:30:45 · 798 阅读 · 0 评论 -
数学专题-素数筛法
输入:一个数输出:1到这个数范围内个位为1的所有素数#include<iostream>using namespace std;int prime[10000];int primeSize;bool mark[10001];void init(){ for(int i=1;i<=10000;i++){ mark[i]=false; } primeSize=...原创 2019-06-24 21:46:50 · 63 阅读 · 0 评论 -
数学专题-简易素数判定
输入:一个数输出是否为素数,yes 或no#include<iostream>#include<cstdio>#include<cmath>using namespace std;bool judge(int x){ if(x<=1) return false; int bound=(int)sqrt(x)+1; for(int i=2;...原创 2019-06-24 21:12:51 · 55 阅读 · 0 评论 -
数学专题-进制转换
输入:进制(1<m<10) 需要转换的数输出:转换后的数#include<iostream>using namespace std;int main(){ int m; while(cin>>m){ if(m==0) break; long long a; cin>>a; int ans[50],size=0; ...原创 2019-06-22 15:00:52 · 73 阅读 · 0 评论 -
数学专题-特殊乘法
输入:两个数输出:位数分别相乘例:输入123 45输出:5414+15+24+25+34+35=54投机取巧法#include<iostream>using namespace std;int main(){ char a[11],b[11]; while(cin>>a>>b){ int ans=0; for(int i=0;a[i]...原创 2019-06-22 14:36:30 · 90 阅读 · 0 评论 -
数学专题-高精度乘法——N的阶乘
输入:一个数输出:这个数的阶乘#include<iostream>#include<cstdio>#include<cstring>using namespace std;struct bigInteger{ int digit[1000]; int size; void init(){ for(int i=0;i<1000;i++)...原创 2019-06-25 16:27:33 · 181 阅读 · 0 评论 -
数学专题-高精度整数加法
输入:两个大整数输出:和#include<iostream>#include<cstdio>#include<cstring>using namespace std;struct bigInteger{ int digit[1000]; int size; void init(){ for(int i=0;i<1000;i++) ...原创 2019-06-25 15:30:13 · 72 阅读 · 0 评论