Cho phương trình: 2 x^2*s(x)*x-n=0 Trong đó x,n là những số nguyên dương, s(x) bằng tổng các chữ số của x . Yêu cầu: Cho trước giá trị .N Hãy tìm giá trị x nhỏ nhất thỏa mãn phương trình trên. Dữ liệu: Vào từ file văn bản SOLVE.INP có một số nguyên duy nhất 18(110).NN Kết quả: Ghi ra file văn bản SOLVE.OUT một số nguyên duy nhất x nhỏ nhất thỏa mãn phương trình. Trong trường hợp không tìm được x thì ghi ra -1
1 câu trả lời
uses crt, math;
var i, x:longint;
n:qword;
function s(x:longint):word;
var res:word;
begin
res:=0;
while x <> 0 do
begin
inc(res, x mod 10);
x:=x div 10;
end;
exit(res);
end;
begin
clrscr;
readln(n);
x:=trunc(exp((1/3) * ln(n))) + 1;
for i:=max(x - 300, 0) to x do
if (i*i*i*s(i) = n) then
begin
write(i);
exit;
end;
write(-1);
readln;
end.
Câu hỏi trong lớp
Xem thêm