結果
| 問題 | 
                            No.2035 Tunnel
                             | 
                    
| コンテスト | |
| ユーザー | 
                             | 
                    
| 提出日時 | 2022-08-15 20:33:02 | 
| 言語 | C  (gcc 13.3.0)  | 
                    
| 結果 | 
                             
                                TLE
                                 
                             
                            
                         | 
                    
| 実行時間 | - | 
| コード長 | 670 bytes | 
| コンパイル時間 | 350 ms | 
| コンパイル使用メモリ | 29,312 KB | 
| 実行使用メモリ | 13,636 KB | 
| 最終ジャッジ日時 | 2024-10-02 08:51:05 | 
| 合計ジャッジ時間 | 3,880 ms | 
| 
                            ジャッジサーバーID (参考情報)  | 
                        judge4 / judge5 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| sample | AC * 3 | 
| other | AC * 2 TLE * 1 -- * 25 | 
ソースコード
#include <stdio.h>
#define N 300000
int main(void){
    char S[N];
    int n,counter = 0,num = 0,t[N],u;
    scanf("%d",&n);
    scanf("%s",&S);
loop:
    if(S[n-1] == '#'){
        t[num] = n-1;
        num++;
    }
    for(int i=0;i<n-1;i++)
    {
        if(S[i] == '#' && S[i+1] == '.')
        {
            t[num] = i;
            num++;
        }
    }
    for(int i=0;i<num;i++)
    {
        u = t[i];
        S[u] = '.';
        S[u+1] = '#';
    }
    num = 0;
    for(int i=0;i<n;i++){
        if(S[i] == '#')
        {
            counter++;
            goto loop;
        }
    }
    counter++;
    goto end;
end:
    printf("%d",counter);
    return 0;
}