提出 #5369652


ソースコード 拡げる

#include<bits/stdc++.h>
using namespace std;
#define step(i, s, n, d) for(int i=s; i<n; i+=d)
#define FOR(i,s,n) step(i,s,n,1)
#define rep(i,n) FOR(i,0,n)
#define ll long long
typedef pair<int, int> P;

int main(){
  ll n, ans = 0;
  cin >> n;
  for(ll i = 1;  i*i <= n; i++) {
    // cout << n/m << " " << n%m << endl;
    if (n%i == 0) {
      if (i > 1) {
        if (n%(i-1) == n/(i-1)) {
          ans += i-1;
        }
      }
      if (n/i-1 > 1) {
        if (n%(n/i-1) == n/(n/i-1)) {
          ans += (n/i-1);
        }
      }
      // cout << (n/i)-1 << endl;
    }
  }
  cout << ans << endl;
}

提出情報

提出日時
問題 D - DivRem Number
ユーザ KeitaKishida0811
言語 C++14 (GCC 5.4.1)
得点 500
コード長 636 Byte
結果 AC
実行時間 12 ms
メモリ 256 KiB

ジャッジ結果

セット名 Sample All
得点 / 配点 0 / 0 500 / 500
結果
AC × 2
AC × 25
セット名 テストケース
Sample sample_01.txt, sample_02.txt
All hand_01.txt, hand_02.txt, hand_03.txt, rand_01.txt, rand_02.txt, rand_03.txt, rand_04.txt, rand_05.txt, rand_06.txt, rand_07.txt, rand_08.txt, rand_09.txt, rand_10.txt, rand_11.txt, rand_12.txt, rand_13.txt, rand_14.txt, rand_15.txt, rand_16.txt, rand_17.txt, rand_18.txt, rand_19.txt, rand_20.txt, sample_01.txt, sample_02.txt
ケース名 結果 実行時間 メモリ
hand_01.txt AC 1 ms 256 KiB
hand_02.txt AC 1 ms 256 KiB
hand_03.txt AC 12 ms 256 KiB
rand_01.txt AC 9 ms 256 KiB
rand_02.txt AC 10 ms 256 KiB
rand_03.txt AC 11 ms 256 KiB
rand_04.txt AC 10 ms 256 KiB
rand_05.txt AC 11 ms 256 KiB
rand_06.txt AC 12 ms 256 KiB
rand_07.txt AC 8 ms 256 KiB
rand_08.txt AC 6 ms 256 KiB
rand_09.txt AC 9 ms 256 KiB
rand_10.txt AC 8 ms 256 KiB
rand_11.txt AC 1 ms 256 KiB
rand_12.txt AC 1 ms 256 KiB
rand_13.txt AC 1 ms 256 KiB
rand_14.txt AC 1 ms 256 KiB
rand_15.txt AC 1 ms 256 KiB
rand_16.txt AC 2 ms 256 KiB
rand_17.txt AC 1 ms 256 KiB
rand_18.txt AC 1 ms 256 KiB
rand_19.txt AC 1 ms 256 KiB
rand_20.txt AC 1 ms 256 KiB
sample_01.txt AC 1 ms 256 KiB
sample_02.txt AC 12 ms 256 KiB