码迷,mamicode.com
首页 > 其他好文 > 详细

UVA1368

时间:2017-01-05 17:50:57      阅读:145      评论:0      收藏:0      [点我收藏+]

标签:ring   nbsp   std   元素   min   int   style   ini   for   

用一个二维数组装m个字符串,然后用一个数组装每个字符串的hamming距离。找到最小的hanming距离即可

#include<stdio.h>
#include<string.h>
//比较两个字符串有多少个元素不同 
int hamming(char s1[],char s2[],int n){
    int count=0;
    for(int i=0;i<n;i++)
        if(s1[i] != s2[i])
            count++;
    
    return count;
}

int main(){
    int m,n;
    char s[50][1000];
    int a[1000];
    int count;
    scanf("%d %d",&m,&n);
    for(int i=0;i<m;i++)
        scanf("%s",s[i]);
        
    for(int i=0;i<m;i++){
        count=0;
        for(int j=0;j<m;j++)
            count+=hamming(s[i],s[j],n);
        a[i]=count;
    }
    
    for(int i=0;i<m;i++)
        printf("a[%d]=%d\n",i,a[i]);
    

    int min=0;
    int mini=0;
    
    min=10000;
    for(int i=0;i<m;i++){
        if(a[i] < min){
            min=a[i];
            mini=i;
        }
        if(a[i] == min){
            if(strcmp(s[mini],s[i])>0)
                mini=i;
        }
    }
    printf("%s\n",s[mini]);
    
    return 0;
}

 

UVA1368

标签:ring   nbsp   std   元素   min   int   style   ini   for   

原文地址:http://www.cnblogs.com/betterluo/p/6253083.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!