網易面試題之暗黑字符串

一個只包含'A'、'B'和'C'的字符串,如果存在某一段長度爲3的連續子串中恰好'A'、'B'和'C'各有一個,那麼這個字符串就是純淨的,否則這個字符串就是暗黑的。例如:
BAACAACCBAAA 連續子串"CBA"中包含了'A','B','C'各一個,所以是純淨的字符串
AABBCCAABB 不存在一個長度爲3的連續子串包含'A','B','C',所以是暗黑的字符串
你的任務就是計算出長度爲n的字符串(只包含'A'、'B'和'C'),有多少個是暗黑的字符串。
import java.util.Scanner;
 
public class Main {
    public static void main(String[] args) {
     int n;
     cin>>n;
    int pack8=n/8;
    int pack6=0;
    for(pack8;pack8>=0;pack8--)
    {
        if((n-8*pack8)%6==0)
        {
            cout<<pack8+(n-8*pack8)/6<<endl;
            return 0;
        }
    }
    cout<<-1<<endl;
    }
}



發佈了89 篇原創文章 · 獲贊 21 · 訪問量 10萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章