最省納智捷1年新車83萬起5檔高息股比定存強10倍正妹的東京自助旅行睽違25天終開會 立院...
2012-12-26 21:39:01 人氣(206) | 回應(0) | 推薦(0) | 收藏(0) 上一篇 | 下一篇

[UVA] 12583 - Memory Overflow

0
收藏
0
推薦

題目意思:
這個人只能記住前 k 天的人,而他每天只會遇到一個人,
如果不認識的話,他會把他記住,但是在 k 天後遺忘,
如果再次遇到的話,就在延長時間。
問 他有幾天可以認識到他認識的人。

// 英文原題就不方便複製了

#include <stdio.h>

int main() {
    int t, cases = 0, n, k;
    char d[505];
    scanf("%d", &t);
    while(t--) {
        scanf("%d %d", &n, &k);
        scanf("%s", d);
        int r[26] = {}, cnt = 0, i;
        for(i = 0; i < 26; i++)
            r[i] = -0xfff;
        for(i = 0; i < n; i++) {
            if(i-r[d[i]-'A'] <= k)
                cnt++;
            r[d[i]-'A'] = i;
        }
        printf("Case %d: %d\n", ++cases, cnt);
    }
    return 0;
}

12583Memory Overflow
台長:Morris
人氣(206) | 回應(0)| 推薦 (0)| 收藏 (0)| 轉寄
全站分類: 不分類 | 個人分類: UVA |
此分類下一篇:[UVA][stack] 12582 - Wedding of Sultan
此分類上一篇:[UVA][bfs] 11624 - Fire!

我要回應
是 (若未登入"個人新聞台帳號"則看不到回覆唷!)
* 請輸入識別碼:
請輸入以下數字 (ex:123)

(有*為必填)
詳全文