zoukankan      html  css  js  c++  java
  • 寻找克隆人

    寻找克隆人

    时间限制:1000 ms  |  内存限制:65535 KB
    难度:3
    描写叙述

    美国的一个小镇近日被外星人突击,一部分居民被其带走并克隆,如今,科学家提取了镇上一些人的DNA,请找出当中具有同样被克隆个数的DNA个数,比如以下的9个序列

    AAAAAA
    ACACAC
    GTTTTG
    ACACAC
    GTTTTG
    ACACAC
    ACACAC
    TCCCCC
    TCCCCC
    当中TCCCCC,GTTTTG分别具有两个同样个体,ACACAC有四个。AAAAAA为一个,则依照行数相应输出其个数

    第一行1,第二行2,第四行1,其它行输出0,共9行

    输入
    序列数不超过20000,每序列不超过20个字符
    输入以0 0结束
    输出
    如题中描写叙述输出就可以
    例子输入
    9 6
    AAAAAA
    ACACAC
    GTTTTG
    ACACAC
    GTTTTG
    ACACAC
    ACACAC
    TCCCCC
    TCCCCC
    0 0
    
    例子输出
    1
    2
    0
    1
    0
    0
    0
    0
    0
    代码:
    #include<stdio.h>
    #include<stdlib.h>
    #include<string.h>
    int cmp(const void *a,const void *b)
    {
    	return (strcmp((char*)a,(char*)b));
    }
    int main()
    {
    	int m,n,i,num[20005];
    	char str[20002][21];
    	while(scanf("%d%d",&m,&n)!=EOF&&m!=0&&n!=0)
    	{
    		for(i=0;i<m;i++)
    			scanf("%s",str[i]);
    		qsort(str,m,sizeof(str[0]),cmp);
    		memset(num,0,sizeof(num));
    		int count=1;
    		for(i=1;i<=m;i++)
    		{
    			if(strcmp(str[i],str[i-1])==0)
    				count++;
    			else
    			{
    				num[count]++;
    				count=1;
    			}
    		}
    		for(i=1;i<=m;i++)
    			printf("%d
    ",num[i]);
    	}
    	return 0;
    }
    


  • 相关阅读:
    股市行情指标计算原理和趋势反映--量化交易1-基础
    建立ssh反向隧道
    Linux学习截图保存
    Java内存泄漏
    Java如何正确比较浮点数
    Github使用
    矩阵向量求导
    深度神经网络反向传播算法
    深度神经网络模型与前向传播
    Unity(八)脚本生命周期
  • 原文地址:https://www.cnblogs.com/lytwajue/p/6707427.html
Copyright © 2011-2022 走看看