這題我們在訓練賽中沒做出來,事後xxs告訴我乙個非常吊的方法:
列舉字串的中點,當不相等的字母超過2k時,break掉,沒超過的時候,更新最大長度
因為字串長度不是奇數就是偶數,所以我們列舉兩種字串即可
注意: 字串中非字母不做比較 且 大寫字母化為小寫字母去比較
**:
#include #include int ansp,ansl= 0;
char ch[1005];
int hash[1005];
int main()
else
hash[i]= -1;
} int ansl= 0;
for(int i= 1; i<= len; i++)
if(hash[rr]== -1)
if(ch[ll]!= ch[rr])
cost+= 2;
if(cost> 2*k)
break;
else
}ll--; rr++;
}} //列舉奇字串
for(int i= 1; i<= len; i++)
if(hash[rr]== -1)
if(ch[ll]!= ch[rr])
cost+= 2;
if(cost> 2*k)
break;
else
}ll--; rr++;
}}//列舉偶字串
t++;
printf("case %d: %d %d\n",t, ansl, ansp);
} return 0;
}
湖南省2010程式設計大賽第一題
超級水題。不解釋!題目 題目a 汽水瓶有這樣一道智力題 某商店規定 三個空汽水瓶可以換一瓶汽水。小張手上有十個空汽水瓶,她最多可以換多少瓶汽水喝?答案是5瓶,方法如下 先用9個空瓶子換3瓶汽水,喝掉3瓶滿的,喝完以後4個空瓶子,用3個再換一瓶,喝掉這瓶滿的,這時候剩2個空瓶子。然後你讓老闆先借給你一...
弟弟的作業(湖南省第六屆程式設計大賽)
題目描述 你的弟弟剛做完了 100以內數的加減法 這部分的作業,請你幫他檢查一下。每道題目 包括弟弟的答案 的格式為a b c或者a b c,其中a和b是作業中給出的,均為不超過100的非負整數 c是弟弟算出的答案,可能是不超過200的非負整數,也可能是單個字元 表示他不會算。輸入輸入檔案包含不超過...
2015湖南省ACM大賽F題階乘除法
description 輸入兩個正整數 n,m 輸出 n m 其中階乘定義為 n 1 2 3 n n 1 比如,若 n 6,m 3 則 n m 6 3 720 6 120。是不是很簡單?現在讓我們把問題反過來 輸入 k n m 找到這樣的整數二元組 n,m n m 1 如果答案不唯一,n 應該盡量小...