zoukankan      html  css  js  c++  java
  • 奇异数

    规定内存限制为3mb

    在一个数列里n个数,输出不为m个数字的那个数

    5 3
    2 2 3 3 3 输出3

    9 2
    1 1 3 2 2 3 3 4 4 输出3

    9 4
    1 2 2 1 2 1 2 3 1 输出3

    开a[64]的数组记录二进制转化好的数

    最后对该数组取余%m

    在对应的/(n%m)

    数组转化为数字即可

    View Code
    #include<stdio.h>
    #include<string.h>

    int a[64];

    int main()
    {
    int n,m;
    while(scanf("%d%d",&n,&m)!=EOF)
    {
    int i,temp,add;

    memset(a,0,sizeof(a));
    for(i=1;i<=n;i++)
    {
    scanf("%d",&temp);
    add=0;
    while(temp)
    {
    if(temp%2==1)
    a[add]++;
    temp=temp/2;
    add++;
    }
    }

    int p=n%m;
    for(i=0;i<=add;i++)
    {
    a[i]=a[i]%m;
    a[i]=a[i]/p;
    }

    int all=0;
    for(i=0;i<=add;i++)
    {
    if(a[i])
    all+=1<<i;
    }

    printf("%d\n",all);
    }
    }



  • 相关阅读:
    Leetcode字符串算法
    Leetcode基础算法结构-目录结构
    python日志-loguru日志管理
    FastApi
    python-hashlib
    excel数据操作
    yagmail自动发邮件
    python-sys
    集合
    文件操作
  • 原文地址:https://www.cnblogs.com/huhuuu/p/2318787.html
Copyright © 2011-2022 走看看