310
Cerința
Se dă n
un număr natural. Aflați restul maxim care se poate obține dacă împărțim numărul n
la orice număr care se obține prin eliminarea unei cifre ale sale.
Date de intrare
Programul citește de la tastatură numărul n
.
Date de ieșire
Programul va afișa pe ecran numărul r
, reprezentând restul maxim cerut.
Restricții și precizări
10 ≤ n ≤ 2.000.000.000
- dacă prin eliminarea unei cifre se obține numărul
0
, atuncin
nu se va împărți la0
.
Exemplu
Intrare
217
Ieșire
13
Explicație
217:17=12
rest 13
, 217:27=8
rest 1
, 217:21=10
rest 7
, deci restul maxim obținut este 13
.
#include <bits/stdc++.h> using namespace std; int main() { int n, x, r=0; long long p=1; cin>>n; while(p<=n) { x=n/(p*10)*p+n%p; if(x!=0) { if(n%x>r) r=n%x; } p=p*10; } cout<<r; return 0; }
Comentarii