結果
| 問題 | No.3448 ABBBBBBBBC |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2026-02-20 21:39:42 |
| 言語 | C++17 (gcc 15.2.0 + boost 1.89.0) |
| 結果 |
AC
|
| 実行時間 | 86 ms / 2,000 ms |
| コード長 | 1,510 bytes |
| 記録 | |
| コンパイル時間 | 2,025 ms |
| コンパイル使用メモリ | 215,596 KB |
| 実行使用メモリ | 7,972 KB |
| 最終ジャッジ日時 | 2026-02-20 21:39:46 |
| 合計ジャッジ時間 | 3,311 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 1 |
| other | AC * 4 |
ソースコード
#include <bits/stdc++.h>
using namespace std;
int main(){
ios_base::sync_with_stdio(false);
cin.tie(nullptr);
long long T; cin >> T;
long long Sk = 0;
while(T--){
long long N = 2,K = Sk++; cin >> N >> K; K--;
for(long long i=1; i<=9; i++){
long long now = 72*N;
if(K >= now) K -= now;
else{
for(long long k=0; k<=9; k++){
if(i == k) continue;
now = 8*N;
if(K >= now) K -= now;
else{
long long small = 0,big = 0;
vector<long long> S,B;
for(long long l=0; l<=9; l++){
if(i == l || k == l) continue;
if(l < k) small++,S.push_back(l);
else big++,B.push_back(l);
}
if(K >= small*N){
K -= small*N;
long long len = N-K/big;
cout << len+2 << " " << i << " " << k << " " << B.at(K%big) << "\n";
}
else{
long long len = K/small;
cout << len+3 << " " << i << " " << k << " " << S.at(K%small) << "\n";
}
break;
}
}
break;
}
}
}
}