`
jacobcookie
  • 浏览: 94241 次
社区版块
存档分类
最新评论

有1到10w这10w个数,去除2个并打乱次序,如何找出那两个数

 
阅读更多
有1到10w这10w个数,去除2个并打乱次序,如何找出那两个数 
 描述:有1到10w这10w个数,去除2个并打乱次序,如何找出那两个数。
1、位图的方法:
假设待处理数组为A[10w-2]
定义一个数组B[10w],这里假设B中每个元素占用1比特,并初始化为全0
for(i=0;i <10w-2;i++)
{
 B[ A[i] ]=1
}
那么B中为零的元素即为缺少的数据
这种方法的效率非常高,是计算机中最常用的算法之一
2、首先计算1到10w的和,平方和。
   然后计算给定数字的和,平方和。
   两次的到的数字相减,可以得到这两个数字的和,平方和。
   所以我们有
    x + y = n
    x^2 + y^2 = m
   解方程可以得到x和y的值。
   求和以及平方和可以得到结果,不过可能求平方和运算量比较大(用64位int不会溢出)

const int SIZE=1000;  
 
int main(int argc, char* argv[])  
{  
    int A[]={2,3,4,5,6,7};  
    int B[SIZE]={0};  
    for(int i=0;i<sizeof(A)/sizeof(A[0]);i++){  
        B[A[i]]=1;  
    }  
    for(int j=0;j<SIZE;j++){  
        if(B[j]==0){  
            printf("%d\t",j);  
        }  
          
    }  
 
    return 0;  
} 

 

分享到:
评论

相关推荐

    python把0到n-1这些数随机打乱得到的一个数字序列

    get unique random integer from 0, ... 是把0到n-1这些数随机打乱得到的一个数字序列 类似matlab中的randperm函数,只是matlab是从1到n python 随机矩阵,随机整数矩阵 见:https://github.com/gongchunye/randomperm

    在python中以相同顺序shuffle两个list的方法

    这时就需要以相同的顺序打乱两个list,那么在python中如何实现呢?可以通过设置相同的随机种子,再shuffle的方式来实现。 代码如下: import random randnum = random.randint(0,100) random.seed(randnum)

    易语言编辑框内容次序打乱源码.rar

    《易语言编辑框内容次序打乱源码》是一个关于编程技术的资源,主要针对易语言这一编程环境,涉及到了字符串处理和用户界面交互的核心概念。易语言是中国自主研发的一种简单易学的编程语言,旨在降低编程门槛,让更多...

    易语言编辑框内容次序打乱

    "易语言编辑框内容次序打乱"是一个具体的技术问题,涉及到对编辑框中的文本内容进行随机排序。下面我们将深入探讨这个问题及其解决方案。 首先,我们需要了解易语言的基本语法和结构。易语言是一种以中文为关键字的...

    jQuery可以自由打乱拼图次序游戏.zip

    在本项目"jQuery可以自由打乱拼图次序游戏.zip"中,我们主要探讨的是一个基于jQuery技术实现的互动拼图游戏。这个游戏允许用户自由打乱拼图的顺序,提供3*3和4*4等多种不同的组合模式,旨在增强用户的参与度和娱乐性...

    易语言随机打乱数组

    交换`则是交换两个元素的位置。在实际使用时,你需要将`...`替换为实际的数组元素,并根据需要调整数组类型。 在提供的压缩包文件"易语言随机打乱数组源码"中,你应该能找到一个实现了上述逻辑的完整源代码文件。你...

    英语次序打乱+mysql.rar

    1. "学位英语次序打乱.sql" - 这个文件可能是用SQL语言创建的一个数据库,里面存储了打乱顺序的英语单词或短语。用户可能需要通过编写SQL查询来恢复它们的原始顺序,以此进行英语复习。 2. "mysql+已复习的word.txt...

    excel中一排数字,如何把它的顺序打乱.pdf

    在弹出的对话框中,设置“列”为B列,并选择“升序”或“降序”排序,这取决于你希望数字从小到大还是从大到小排列。通常,选择“降序”会让原始顺序更随机。 4. **删除辅助列**(可选): 如果你不关心辅助列中的...

    将一个数组随机打乱后显示,专注力训练小游戏

    5. **用户交互**:游戏的目的是让用户找到1到25的数字,因此需要有一个用户界面来显示打乱的数组,并接收用户的输入。这可能涉及到图形用户界面(GUI)的设计,比如使用Tkinter(Python)、JavaFX、Qt(C++)等库。 ...

    Canvas 2D打乱排列文字数字动画.rar

    这个项目对于想要增强网页交互性和视觉吸引力的开发者来说非常实用,同时也提供了一个基础,供有需求的开发者进行二次修改和定制。 首先,让我们深入了解Canvas 2D API。它是HTML5的一部分,允许JavaScript直接操作...

    易语言源码易语言编辑框内容次序打乱源码.rar

    易语言源码易语言编辑框内容次序打乱源码.rar 易语言源码易语言编辑框内容次序打乱源码.rar 易语言源码易语言编辑框内容次序打乱源码.rar 易语言源码易语言编辑框内容次序打乱源码.rar 易语言源码易语言编辑框...

    c/c++求排名算法 不打乱记录次序 输出排列名次

    本篇文章将详细讲解如何在不打乱原始记录次序的情况下,实现这一功能。 首先,我们需要理解什么是“不打乱记录次序”。这意味着我们在计算排名时,不应该改变原始数据结构中的顺序,而是要在原有顺序的基础上附加...

    python训练数据时打乱训练数据与标签的两种方法小结

    这种方法的好处是,如果设置了相同的随机数种子,每次运行代码时打乱的顺序都是固定的,这有助于实验的复现。使用随机数种子的方法如下: ```python import numpy as np data = np.array([[1,1],[2,2],[3,3],[4,4]...

    八数码的打乱与移动

    它在一个3x3的网格上进行,其中有一个空位,其余八个格子分别填充了1到8的数字。目标是通过合法的移动(上下左右滑动相邻的数字)来重新排列数字,使得它们按照1到8的顺序排列,空位位于右下角。在这个"八数码的打乱...

    数字黑洞 c语言

    这两个函数的作用是将输入的五位数拆分成各个位上的数字,并对其进行排序。`max`函数负责找到最大组合,而`min`函数负责找到最小组合。它们都是通过两层嵌套的循环完成排序的。值得注意的是,这两个函数内部都采用了...

    扑克牌打乱发牌

    这个类至少包含两个属性:花色(suit)和数字(value)。在Java中,可以这样定义: ```java public class Card { private String suit; // 花色:红桃、黑桃、梅花、方块 private int value; // 数字:2-10, J...

    C#实现将数组内元素打乱顺序的方法

    然后,我们打印出数组的类型,显示原始数组,调用`GetDisruptedItems`方法获取打乱顺序后的数组,并打印出来。最后,程序暂停等待用户输入,以保持控制台窗口不立即关闭。 运行这段代码,我们可以看到原数组和打乱...

    20以内的数相邻之和为质数且首尾之和也为质数

    在编程领域,这个问题涉及到算法设计和数学应用。题目要求我们编写一个C++程序,找到所有可能的循环序列,使得序列中的每对相邻数字之和都是质数,并且序列的首尾数字之和也是质数。在这个问题中,我们需要对质数的...

    多个数组按照同样顺序打乱

    多个数组按照同样顺序打乱,有需求大家下载。

Global site tag (gtag.js) - Google Analytics