Contest Duration: - (local time) (100 minutes) Back to Home

Submission #855224

Source Code Expand

Copy
```#include <cstdio>
#include <cstring>
#include <cstdlib>
#include <cmath>
#include <ctime>
#include <cassert>
#include <string>
#include <algorithm>
#include <vector>
#include <queue>
#include <stack>
#include <functional>
#include <iostream>
#include <map>
#include <set>
#include <cassert>
using namespace std;
typedef long long ll;
typedef pair<int,int> P;
typedef pair<int,P> P1;
typedef pair<P,P> P2;
#define pu push
#define pb push_back
#define mp make_pair
#define eps 1e-7
#define INF 1000000000
#define fi first
#define sc second
#define rep(i,x) for(int i=0;i<x;i++)
#define SORT(x) sort(x.begin(),x.end())
#define ERASE(x) x.erase(unique(x.begin(),x.end()),x.end())
#define POSL(x,v) (lower_bound(x.begin(),x.end(),v)-x.begin())
#define POSU(x,v) (upper_bound(x.begin(),x.end(),v)-x.begin())
ll a,b,ret=1e18;
int main(){
cin >> a >> b;
if(a==b) ret=a+1;
for(ll i=2;i<=1000000;i++){
ll c = a;
ll d = 0;
while(c){
d += c%i;
c /= i;
}
if(d == b) ret = min(ret,i);
}
for(ll i=1;i<=1000000;i++){
if(i > b) continue;
// i*x + (b-i) == a && x > b-i
ll c = b-i;
if(a-c > 0 && (a-c)%i==0 && (a-c)/i > c && i<(a-c)/i) ret = min(ret,(a-c)/i);
}
if(ret > 1e17) puts("-1");
else cout << ret << endl;
}```

#### Submission Info

Submission Time 2016-08-28 21:12:01+0900 D - Digit Sum IH19980412 C++14 (GCC 5.4.1) 500 1284 Byte AC 67 ms 256 KB

#### Judge Result

Set Name Sample All
Score / Max Score 0 / 0 500 / 500
Status
 AC × 5
 AC × 47
Set Name Test Cases
Case Name Status Exec Time Memory
subtask1_100000000000_1.txt AC 46 ms 256 KB
subtask1_100000000000_100000000000.txt AC 67 ms 256 KB
subtask1_100000000000_2.txt AC 46 ms 256 KB
subtask1_100000000000_3.txt AC 46 ms 256 KB
subtask1_100000000000_50000000000.txt AC 62 ms 256 KB
subtask1_100000000000_50000000001.txt AC 62 ms 256 KB
subtask1_100000000000_99999999999.txt AC 62 ms 256 KB
subtask1_16983563041_1.txt AC 42 ms 256 KB
subtask1_1_1.txt AC 24 ms 256 KB
subtask1_1_2.txt AC 23 ms 256 KB
subtask1_1_31415926535.txt AC 23 ms 256 KB
subtask1_239484768_194586924.txt AC 55 ms 256 KB
subtask1_2_1.txt AC 23 ms 256 KB
subtask1_2_2.txt AC 24 ms 256 KB
subtask1_31415926535_1.txt AC 43 ms 256 KB
subtask1_49234683534_2461734011.txt AC 60 ms 256 KB
subtask1_4_1.txt AC 23 ms 256 KB
subtask1_58640129658_232122496.txt AC 60 ms 256 KB
subtask1_68719476735_35.txt AC 45 ms 256 KB
subtask1_68719476735_36.txt AC 45 ms 256 KB
subtask1_68719476735_37.txt AC 44 ms 256 KB
subtask1_68719476736_1.txt AC 45 ms 256 KB
subtask1_68719476736_2.txt AC 45 ms 256 KB
subtask1_72850192441_16865701.txt AC 61 ms 256 KB
subtask1_79285169301_27.txt AC 45 ms 256 KB
subtask1_82914867733_1676425945.txt AC 61 ms 256 KB
subtask1_8594813796_75700.txt AC 42 ms 256 KB
subtask1_87654_12345.txt AC 24 ms 256 KB
subtask1_87654_138.txt AC 24 ms 256 KB
subtask1_87654_30.txt AC 24 ms 256 KB
subtask1_87654_4294967308.txt AC 25 ms 256 KB
subtask1_87654_45678.txt AC 25 ms 256 KB
subtask1_97822032312_49157112.txt AC 62 ms 256 KB
subtask1_98750604051_977728851.txt AC 62 ms 256 KB
subtask1_99999515529_1.txt AC 46 ms 256 KB
subtask1_99999515529_316226.txt AC 51 ms 256 KB
subtask1_99999515529_316227.txt AC 51 ms 256 KB
subtask1_99999515529_316228.txt AC 51 ms 256 KB
subtask1_99999515529_49999757765.txt AC 62 ms 256 KB
subtask1_99999515529_49999757766.txt AC 62 ms 256 KB
subtask1_99999515530_2.txt AC 46 ms 256 KB
subtask1_99999999977_1.txt AC 46 ms 256 KB
subtask1_99999999977_2.txt AC 46 ms 256 KB
subtask1_99999999977_49999999989.txt AC 62 ms 256 KB
subtask1_99999999977_49999999990.txt AC 62 ms 256 KB
subtask1_99999999999_1.txt AC 46 ms 256 KB
subtask1_99999999999_100000000000.txt AC 62 ms 256 KB