bài 1: Tìm số nguyên dương K nhỏ nhất sao cho tích các chữ số của K bằng số nguyên M cho trước. Nếu không tìm được K, in ra -1. Dữ liệu vào: Một số nguyên M (0≤ M ≤109). Dữ liệu xuất: Số nguyên dương K là kết quả của bài toán. Nếu không tìm được K, in ra -1. Ví dụ: TIMSO.INP TIMSO.OUT 12 26 0 10 bài 2: Có n ngôi làng được đánh số từ 1 đến n nằm trên một đường thẳng, ngôi làng thứ I nằm ở vị trí Ai (1≤ i ≤n). Có một số ngôi làng có điện và những ngôi làng còn lại chưa có. Độ dài dây điện nối từ một ngôi làng i có điện đến ngôi làng j chưa có điện là |Ai-Aj|. Yêu cầu: Tính tổng độ dài dây nối ít nhất để tất cả các ngôi làng đều có điện. Dữ liệu vào: tệp KEODIEN.inp có cấu trúc như sau: Dòng đầu ghi số nguyên n (1≤ n ≤1.000). Dòng thứ hai ghi A1,A2, …,An, (0≤ A1 <A2,< …,<An ≤1.000.000). Dòng thứ ba ghi n số 0 hoặc 1 : nếu số thứ I là không nghĩa là làng này chưa có điện, ngược lại thì làng I đã có điện. Kết quả: ghi ra tệp KEODIEN.OUT ghi tổng độ dài dây nối ít nhất để mọi ngôi làng đều có điện. Ví dụ: KEODIEN.INP KEODIEN.OUT 3 1 5 6 1 0 0 5 GIẢI THÍCH Ý TƯỞNG, CÁCH LÀM NỰA NHA PASCAL

2 câu trả lời

uses crt;
var f:text; i,n:longint; kq:string;
begin
clrscr;
   assign(f,'TIMSO.INP');reset(f);
      readln(f,n);
   close(f);
   assign(f,'TIMSO.OUT');rewrite(f);
      if n=0 then write(f,10) else
      if n=1 then write(f,1) else
         begin
            for i:=9 downto 2 do
               while (n<>0)and(n mod i=0) do
                  begin
                     n:=n div i;
                     kq:=chr(i+48)+kq;
                  end;
            if n=1 then write(f,kq) else write(f,-1);
         end;
   close(f);
end.

Bài 1:
uses crt;
var n, i: longint;
    s: string;
    
label __exit;    
begin
    clrscr;
    readln(n);
    if n = 0 then begin write(10); goto __exit; end;
    if n = 1 then begin write(1); goto __exit; end;
    
    for i:=9 downto 2 do begin
        while n mod i = 0 do begin
            s:=chr(i + 48) + s;
            n:=n div i;
        end;
    end;
    if n = 1 then write(s) else write(-1);
__exit:
readln;
end.

Câu hỏi trong lớp Xem thêm
0 lượt xem
2 đáp án
10 phút trước