結果

問題 No.14 最小公倍数ソート
ユーザー maimai
提出日時 2017-07-07 23:31:42
言語 cLay
(20240714-1)
結果
CE  
実行時間 -
コード長 716 bytes
コンパイル時間 2,224 ms
コンパイル使用メモリ 163,352 KB
最終ジャッジ日時 2024-07-05 12:22:37
合計ジャッジ時間 2,864 ms
ジャッジサーバーID
(参考情報)
judge5 / judge2
このコードへのチャレンジ
(要ログイン)
コンパイルエラー時のメッセージ・ソースコードは、提出者また管理者しか表示できないようにしております。(リジャッジ後のコンパイルエラーは公開されます)
ただし、clay言語の場合は開発者のデバッグのため、公開されます。

コンパイルメッセージ
warning: unknown type [error] for rd (reader) : n
main.cpp: In function ‘void sort_idx_proto(ITER, ITER, std::vector<int>&)’:
main.cpp:381:3: error: ‘idxr’ was not declared in this scope; did you mean ‘idx’?
  381 |   idxr.resize(n);
      |   ^~~~
      |   idx
main.cpp: In function ‘int main()’:
main.cpp:393:6: error: ‘n’ was not declared in this scope
  393 |   rd(n);
      |      ^

ソースコード

diff #

template <typename ITER>
void sort_idx_proto(const ITER begin, const ITER end, vector<int> &idx){//, vector<int> &idxr) {
    size_t n = end - begin;
    idx.resize(n);
    idxr.resize(n);
    for (int i = 0; i < n; ++i) idx[i] = i;
    sort(idx.begin(), idx.end(), [&begin](int l, int r) {return begin[l] < begin[r]; });
    //for (int i = 0; i < n; ++i) idxr[idx[i]] = i;
}

ll aa[10010];
ll bb[10010];
ll gg[10010];
{
    rd(n, aa(n));
    vector<int> v(n);
    
    rep(i, n){
        rep(j, i+1, n) gg[j] = gcd(aa[i],aa[j]);
        sort_idx_proto(gg+i, gg+n, v);
        rep(j, i+1, n){
            bb[j] = aa[v[j]];
        }
        rep(j, i+1, n){
            aa[j] = bb[j];
        }
    }
    wt(aa(n));
}
0