1. 程式人生 > >基因編碼-C語言

基因編碼-C語言

基因編碼

題目:
輸入一個長為 (k≤8)01串s,按照"ABC編碼規則"進行編碼,ABC編碼規則是:
在這裡插入圖片描述
例如:
在這裡插入圖片描述

程式碼分享:

#include <stdio.h>
#include <string.h>
void temp(char a[],int begin,int end)//定義一個二分法臨時函式
{
int numA=0,numB=0;
int i;
for(i=begin;i<end;i++)
{
if(a[i]=='0')
 {
     numA++;
 }         //記錄0的個數
else if(a[i]=='1')
{
    numB++;
}        //記錄1的個數
}
if(numA == end-begin)//陣列全為0,則列印A
{
    printf("A");
}
else if(numB == end-begin)//陣列全為1,則列印B
{
    printf("B");
}
else
{
printf("C");
temp(a,begin,(end+begin)/2);
temp(a,(end+begin)/2,end);
}
}//定義的臨時函式截止

int main()
{
char a[500];
int length;//用於計算使用者輸入陣列a的長度
gets(a);
length= strlen(a);
temp(a,0,length);//呼叫定義的二分法臨時函式進行基因編碼
return 0;
}

執行結果:
在這裡插入圖片描述

以上內容僅提供一種關於基因變碼解決的思路,希望對大家有所幫助,也望大佬積極評論,提出自己的意見。