結果
| 問題 | No.6 使いものにならないハッシュ | 
| コンテスト | |
| ユーザー |  | 
| 提出日時 | 2025-08-18 12:52:58 | 
| 言語 | cLay (20241019-1) | 
| 結果 | 
                                AC
                                 
                             | 
| 実行時間 | 7 ms / 5,000 ms | 
| コード長 | 450 bytes | 
| コンパイル時間 | 3,949 ms | 
| コンパイル使用メモリ | 196,228 KB | 
| 実行使用メモリ | 9,176 KB | 
| 最終ジャッジ日時 | 2025-08-18 12:53:16 | 
| 合計ジャッジ時間 | 4,909 ms | 
| ジャッジサーバーID (参考情報) | judge3 / judge4 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| other | AC * 32 | 
ソースコード
int f(int n) {
    if(n<10) return n;
    return f(sod(n));
}
{
ll@(L,R);
int P[2d5],Q[2d5];
Prime(R+1,P);
intervalSieve(L,R-L+1,Q,(int)sqrt(R),P);
VI ps;
rep(i, R-L+1)if(Q[i])ps.push_back(i+L);
int ans=-1,ln=0;
int j = 0;
set<int> st;
for(int it = 0; it < ps.size(); it++) {
    while(j < ps.size() && !st.count(f(ps[j]))) st.insert(f(ps[j])), j+=1;
    if(ln<=j-it) {
        ans=ps[it];
        ln=j-it;
    }
    st.erase(f(ps[it]));
}
wt(ans);
}
            
            
            
        