藍橋杯子串分值和

2021-10-20 22:35:13 字數 647 閱讀 8551

樣例說明

【樣例說明】

子串 f值

a 1ab 2

aba 2

abab 2

ababc 3

b 1ba 2

bab 2

babc 3

a 1ab 2

abc 3

b 1bc 2

c 1n<=100

思路對字串的所有子串進行遍歷,同時對子串進行去重操作。

#include #include using namespace std;

char a[105];

int b[26];//用來儲存字串

int ans;

void judge(int x, int y)//x開始標記,y結束標記

for (int j = x; j <= y; j++)//將字母與數字相匹配對應,可以對子串中相同字母去重

for (int k = 0; k < 26; k++)//0~26遍歷相當於對子串遍歷,已經去重了。

}}int main()

}cout << ans << endl;

system("pause");

return 0;

}

子串分值(藍橋)

問題描述 對於乙個字串 s,我們定義 s 的分值 f s 為 s 現的不同的字元個 數。例如 f aba 2,f abc 3,f aaa 1。現在給定乙個字串 s 0 n 1 長度為 n 請你計算對於所有 s的非空 子串 s i j 0 i j n f s i j 的和是多少。輸入格式 輸入一行包含...

字串分值和(藍橋杯題目)

字串分值和問題分析 題目 隨機輸入一串字元,列如 ababd 計算字串分值和為 28 個人分析 1 首先我們根據題目可知要找出乙個字串所有組成可能的字串 列入abc可得 2 然後我們取字串第乙個元素,對比後面的剩餘的元素,如果元素第一次出現的話,我們認證它,再出現的話我們將不認證它 解決辦法,我們定...

藍橋杯省賽 子串分值和(舉例子詳解)

分析每個字母的共獻度 include using namespace std typedef long long ll const int n 1e6 10 char s n ll vis 40 int main cout ans endl return0 aba a ab aba b ba a 9...