标题:表示五个数互不相等
只看楼主
scktany
Rank: 1
来 自:华中科技大学
等 级:新手上路
帖 子:4
专家分:0
注 册:2017-11-5
结帖率:50%
已结贴  问题点数:20 回复次数:3 
表示五个数互不相等
表示5个数互不相等,有什么简单的表示方法吗?或者是否可以编一个表示任意n个数互不相等的函数。
 if ((a!=b)&&(a!=c)&&(a!=d)&&(a!=e)&&(b!=c)&&(b!=d)&&(b!=e)&&(c!=d)&&(c!=e)&&(d!=e))
搜索更多相关主题的帖子: 表示 个数 相等 任意 函数 
2017-11-29 17:26
燕小六
Rank: 4
来 自:北京
等 级:业余侠客
威 望:3
帖 子:49
专家分:247
注 册:2017-11-29
得分:10 
可以,不过有数字大小限制

程序代码:
#include<stdio.h>

#define MAX_NUM 100000

int main()
{
  int i, num, dupFlag = 0;
  char htable[MAX_NUM]; 
  memset(htable, 0, sizeof (htable));
  for (i = 0; i < 5; i++) {
    scanf("%d", &num);
    if (num >= MAX_NUM) {
      printf("ignore %d because it more than %d\n", num, MAX_NUM);
      continue;
    }
    if (0 == htable[num]) {
      htable[num] = 1;
    } else {
      printf("hava duplication num\n");
      dupFlag = 1;
      break;
    }
  }
  if (0 == dupFlag) {
    printf("no duplication num\n");
  }
  return 0;
}
2017-11-29 17:38
九转星河
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:长长久久
等 级:贵宾
威 望:52
帖 子:5023
专家分:14003
注 册:2016-10-22
得分:10 
判断n个数相等不相等本质上就是查找~你或许需要一个查找算法(结构)~可以用快排或者哈希等辅助方法来间接实现~

[code]/*~个性签名:bug是什么意思?bug是看上去没有可能的东西实际上是有可能做到的 就是这样~2018-08-08更~*/[/code]
2017-11-29 17:40
燕小六
Rank: 4
来 自:北京
等 级:业余侠客
威 望:3
帖 子:49
专家分:247
注 册:2017-11-29
得分:0 
以下是引用九转星河在2017-11-29 17:40:40的发言:

判断n个数相等不相等本质上就是查找~你或许需要一个查找算法(结构)~可以用快排或者哈希等辅助方法来间接实现~


哈希是最高效的
2017-11-29 17:44



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-482939-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.245116 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved