★ 實驗任務
給你乙個長度為 n,只包含小寫字母的字串 「 a0a1a2…an-1」。 它的核心字串定義
為最短的且包含全部 26 個小寫字母的子串。 這樣的子串可能沒有,也可能只有乙個,還有
可能有多個,所以你只需要輸出它的長度,如果沒有這樣的輸出-1 即可。 注意:乙個字元
串 「 a0a1a2…an-1」 的子串是指「 aiai+1ai+2…aj」 (0 <= i <= j < n) 。
★ 資料輸入
輸入的第一行只有乙個正整數 n( 1 <= n <= 10^6)。 輸入的第二行是乙個長度為 n,
只包含小寫字母的字串。
★ 資料輸出
輸出一行, 包含乙個整數,表示核心字串的長度,如果不存在輸出-1。
輸入示例 輸出示例
27 26
abcdefghijklmnopqrstuvwxy -1zz4
haha
#include
void main()
,c_len=0,min=10000000,q=0;
a[26]=26;
scanf("%d",&n);
scanf("%s",&str);
for(int i=0;ic_len)
a[str[q]-'a']--;
if(!a[str[q]-'a'])
a[26]++;
q++;}}
if(min==10000000)
printf("-1\n");
else
printf("%d\n",min);
}
核心中字串釋疑
1.字串結構 驅動中字串有uniocde string和ansi string兩種結構 unicode string定義如下 typedef struct unicode stringunicode string,punicode string ansi string定義如下 typedef str...
字串的核心應用
字串有2種表示方式 單引號和雙引號!他們沒有任何區別!比如 python 和 python 是一樣的。但是我覺得組合起來用 s 你好 h 你好你好 s s 特別是sql語句中,直接輸出小學會遇到些問題,所以最用 括起來,如果用 就需要轉義 轉義 i love python 拼接 最好不要用 連線,因...
字元與字串 windows核心程式設計
1,字元編碼 utf 8 unicode transformation format unicode轉換格式 0x0080 以下的字元壓縮為1個位元組 0x0080 0x07ff 之間的字元轉換成2個位元組 0x0800 以上的字元轉換為3個位元組 對 surrogate pair 被寫為4個位元組...