結果
| 問題 |
No.6 使いものにならないハッシュ
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2016-11-21 21:14:01 |
| 言語 | C++14 (gcc 13.3.0 + boost 1.87.0) |
| 結果 |
TLE
|
| 実行時間 | - |
| コード長 | 665 bytes |
| コンパイル時間 | 1,623 ms |
| コンパイル使用メモリ | 173,184 KB |
| 実行使用メモリ | 16,968 KB |
| 最終ジャッジ日時 | 2024-11-27 09:33:46 |
| 合計ジャッジ時間 | 200,897 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | TLE * 32 |
ソースコード
#include <bits/stdc++.h>
using namespace std;
int get_hash( int v ){
if( v < 10 )
return v;
int u = 0;
while( v )
u += v % 10, v /= 10;
return get_hash( u );
}
signed main(){
int L, R; cin >> L >> R;
vector< int > cnt( 10 );
deque< int > dq;
int maxlen = 0, ans = -1;
for( int i = R; i >= L; --L ){
int ng = 0;
for( int j = 2; j * j <= i; ++j )
ng |= i % j == 0;
if( ng ) continue;
int hv = get_hash( i );
while( cnt[ hv ] )
--cnt[ dq.back() ], dq.pop_back();
++cnt[ hv ], dq.emplace_front( hv );
if( maxlen < dq.size() )
maxlen = dq.size(), ans = i;
}
cout << ans << endl;
return 0;
}