草庐IT

奇偶数

全部标签

java - 从 Clojure 中的集合( map 列表)中获取偶数/奇数索引元素

我有一个map列表,我需要在Clojure中从该列表中获取偶数/奇数索引元素。我不想用for循环迭代列表。有没有small或者single_word函数? 最佳答案 user=>(take-nth2[0123456789])(02468)user=>(take-nth2(rest[0123456789]))(13579) 关于java-从Clojure中的集合(map列表)中获取偶数/奇数索引元素,我们在StackOverflow上找到一个类似的问题: htt

java - 有效地确定排列的奇偶性

我有一个长度为N的int[]数组,其中包含值0,1,2,....(N-1),即它代表一个整数索引的排列。确定排列是奇数还是偶数的最有效方法是什么parity?(如果可能的话,我特别希望避免为临时工作空间分配对象....) 最佳答案 我认为您可以通过简单地计算cycledecomposition在O(n)时间和O(n)空间内完成此操作.您可以通过简单地从第一个元素开始并沿着路径直到返回起点来计算复杂度为O(n)的循环分解。这给了你第一个周期。沿着路径将每个节点标记为已访问。然后对下一个未访问的节点重复,直到所有节点都标记为已访问。长度

素数与第素数个素数的和能生成$10^7$内的所有偶数

加性组合中,两个集合\(A\)、\(B\)的加法集或和集\(A+B\)定义为\(A\)中任意元素\(a_i\)与\(B\)中任意元素\(b_j\)之和\(a_i+b_j\)构成的集合,用\(|A|\)表示集合\(A\)中元素的数量,则有\[|A|+|B|-1\le|A+B|\le|A|\cdot|B|\]\(n\)以内素数的数量\(|P(n)|\simeq\frac{n}{\logn}\),根据哥德巴赫猜想,所有4以上的偶数都可表示为两个素数之和,这至少意味着素数集和集的元素数量\(|P+P|\simeqn\)。事实上这是一个比较宽松的猜想,即使取素数集中的一个子集就有可能覆盖所有偶数,例如根

c++ - 如何计算 2 个数字 L 和 R(均包括在内)之间的数字,以使所选数字的数字乘积为偶数?

如何计算两个数字L和R(均包含)之间的数字的个数,它们的数字乘积为偶数?除了蛮力,我们还能怎么做?dp[0][0]=4;dp[0][1]=5;for(intl=1;l这是我做的一个蛮力检查器,我正在尝试开发一个更有效的解决方案boolf(lln){llp=1;if(n==0)returntrue;while(n){p*=n%10;n/=10;if(p%2==0)returntrue;p=1;}if(p%2)returnfalse;elsereturntrue;}llbrute(lll,llr){if(l>r)swap(l,r);llcnt=0;for(lli=l;idp[l-1][0]

c++ - 从 unsigned long long 转换为 float with round 到最接近的偶数

我需要编写一个函数,将unsignedlonglong舍入为float,并且舍入应朝向最近的偶数。我不能只进行C++类型转换,因为AFAIK标准没有指定舍入。我正在考虑使用boost::numeric,但在阅读文档后我找不到任何有用的线索。这可以使用那个库来完成吗?当然,如果有替代方案,我会很乐意使用它。如有任何帮助,我们将不胜感激。编辑:添加示例以使事情更清楚一些。假设我想将0xffffff7fffffffff转换为其浮点表示形式。C++标准允许以下任一项:0x5f7fffff~1.9999999*2^630x5f800000=2^64现在,如果你加上最接近偶数的舍入限制,只有第一个

c++ - 选择模板参数包中的每个偶数(或奇数)参数

我想允许使用我正在编写的类作为模板参数指定类型列表以及这些类型的分配器列表,其方式是类型位于奇数位置,分配器位于偶数位置:templateclassMyClass{//Stuffinside}intmain(){MyClassc1;MyClassc2;MyClassc3;//Andsoon....}在内部,存储类型vector的元组是有意义的:std::tuple...>m_storage_;和一个分配器元组用于使用:std::tuple...>m_storage_;我如何在代码中实际声明这些元组?理论上我需要以某种方式选择参数包中的每个奇数/偶数类型-这可能吗?

c++ - 查找具有偶数值的 vector 元素

您能解释一下这段代码是如何工作的吗?它成功计算了具有偶数值的vector元素,但我不清楚在这种特殊情况下绑定(bind)是如何工作的。count_if(vec.begin(),vec.end(),std::bind(logical_not(),std::bind(modulus(),placeholders::_1,2))); 最佳答案 请注意,您发布的代码计算vector中的偶数数,不是奇数:count_if(vec.begin(),vec.end(),bind(logical_not(),bind(modulus(),place

c++ - 给定偶数个顶点,如何根据接近度找到最佳对集?

问题:我们在3D欧氏空间中有一组n个顶点,这些顶点的个数是偶数。我们想根据它们的接近程度将它们配对。换句话说,我们希望能够找到一组顶点对,其中每对顶点中的顶点尽可能靠近。在执行此操作时,我们希望尽可能减少牺牲任何其他对的顶点之间的接近度。我不是在寻找最最优的解决方案(如果它严格存在/可以做到),只是一个可以相对快速计算的合理的解决方案。一种相对糟糕的蛮力方法涉及选择一个顶点并遍历其余顶点以找到其最近的邻居,然后重复直到没有剩余。当然,当我们接近列表的末尾时,最近的顶点可能离得很远,但这是唯一的选择,因此在上面的第三点上这可能会严重失败。 最佳答案

javascript - 如何只匹配那些前面有偶数个 `%` 的数字?

我想捕捉出现在字符串中任意位置的数字,并将它们替换为“(.+)”。但我只想捕获那些前面有偶数个%的数字。如果周围的字符被捕获,不用担心:我们可以使用捕获组来过滤掉数字。我想不出一个ECMAscript正则表达式。这是Playground:abcd%1%%2%%%3%%%%4efghabcd%12%%34%%%666%%%%11efgh一个成功的捕获将表现如下:我尝试过的事情:如果您已经意识到,第三次尝试就差不多成功了。唯一的问题是在Playground的第二行。其实我想表达的是:匹配一个数字,如果它前面有偶数个%并且满足以下任一条件:上面的整个表达式前面没有无[缺少(未使用或其他)字符

奇偶大冒险(判断奇偶,逆序输出)

题目:代码: #includeusingnamespacestd;intmain(){intn;cin>>n;inti=0;intc[100]={0};//数组初始化while(n!=1){if(n%2==1){//判断奇数c[i]=n;n=3*n+1;i++;}elseif(n%2==0){//判断偶数c[i]=n;n=n/2;i++;}}c[i]=1;//逆序输出for(intj=i;j>=0;j--){cout输入样例1:13 输出样例1:124816510204013主要知识点:判断奇偶,储存数在数组