結果

問題 No.982 Add
ユーザー hipotafhipotaf
提出日時 2020-06-08 21:08:24
言語 C++14
(gcc 12.3.0 + boost 1.83.0)
結果
WA  
実行時間 -
コード長 1,355 bytes
コンパイル時間 631 ms
コンパイル使用メモリ 75,948 KB
実行使用メモリ 134,612 KB
最終ジャッジ日時 2024-06-07 23:04:53
合計ジャッジ時間 14,849 ms
ジャッジサーバーID
(参考情報)
judge2 / judge1
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 1 ms
5,248 KB
testcase_01 WA -
testcase_02 WA -
testcase_03 AC 2 ms
5,376 KB
testcase_04 WA -
testcase_05 WA -
testcase_06 WA -
testcase_07 WA -
testcase_08 WA -
testcase_09 WA -
testcase_10 WA -
testcase_11 WA -
testcase_12 WA -
testcase_13 WA -
testcase_14 AC 2 ms
5,376 KB
testcase_15 WA -
testcase_16 WA -
testcase_17 WA -
testcase_18 WA -
testcase_19 WA -
testcase_20 WA -
testcase_21 WA -
testcase_22 WA -
testcase_23 WA -
testcase_24 WA -
testcase_25 WA -
権限があれば一括ダウンロードができます

ソースコード

diff #

#include <iostream>
#include <string>
#include <vector>
#include <algorithm>

using namespace std;

using ll = long long;

template <class T>
using grid = vector<vector<T>>;

#define REP(i,n) for(ll i=0;i<(ll)(n);i++)
#define REPD(i,n) for(ll i=n-1;i>=0;i--)
#define FOR(i,a,b) for(ll i=a;i<=(ll)(b);i++)
#define FORD(i,a,b) for(ll i=a;i>=(ll)(b);i--)

#define input(...) __VA_ARGS__; in(__VA_ARGS__)

void print() {
  std::cout << std::endl;
}

template <class Head, class... Tail>
void print(Head&& head, Tail&&... tail) {
  std::cout << head << " ";
  print(std::forward<Tail>(tail)...);
}

void in() { }

template <class Head, class... Tail>
void in(Head&& head, Tail&&... tail) {
  cin >> head;
  in(std::forward<Tail>(tail)...);
}

int main() {
  ll input(A, B);

  if (A == 1 || B == 1) {
    print(0);
    return 0;
  }

  /* if (A % B == 0 || B % A == 0) { */
  /*   print(-1); */
  /*   return 0; */
  /* } */

  print(A, B);
  vector<ll> result;
  REP(x, 3000) {
    REP(y, 3000) {
      result.push_back(A * x + B * y);
    }
  }

  sort(result.begin(), result.end());
  ll p = 0;
  ll check = 0;
  int ans = 0;
  for(auto v: result) {
    int range = max((v - p) - 1, 0ll);
    if (range > 0) {
      if (v - check > 1000) {
        print(ans);
        return 0;
      }
      check = v;
    }
    ans += range;
    p = v;
  }
  print(-1);
}
0