19/11/2015 10TIN

Bài tập chiều 19/11/2015
  1. PHÂN TÍCH SỐ
  2. ĐÁNH BIA
  3. LŨY THỪA XÂU
Code bài table buổi sáng (điểm tối đa)
uses math, sysutils;
var fi, fo: text;
    n, i: longint;
    z, t, j, k, m: int64;
    a: array [0..15] of int64;
    s, st: ansistring;
begin
        assign(fi, 'table.inp'); reset(fi);
        assign(fo, 'table.out'); rewrite(fo);
        readln(fi, n, t);
        a[0] := 0;
        a[1] := 9;
        a[2] := 189;
        a[3] := 2889;
        a[4] := 38889;
        a[5] := 488889;
        a[6] := 5888889;
        a[7] := 68888889;
        a[8] := 788888889;
        a[9] := 8888888889;
        a[10] := 98888888889;
        a[11] := 1088888888889;
        a[12] := 11888888888889;
        a[13] := 128888888888889;
        a[14] := 1388888888888889;
        a[15] := 14888888888888889;
        for i := 1 to 15 do
                if t <= a[i] then
                begin
                        t := t - a[i - 1];
                        break;
                end;
        m := t mod i;
        t := t div i;
        z := trunc(power(10, i - 1));
        j := z + t - 1;
        st := inttostr(j + 1);
        k := max(1, trunc(z + t - n / i));
        while k <= j do
        begin
                s := inttostr(j) + s;
                dec(j);
        end;
        for i := 1 to m do
                s := s + st[i];
        writeln(fo, copy(s, max(1, length(s) - n + 1), n));
        close(fi);
        close(fo);
end.

Comments

Popular posts from this blog

Bài toán dãy tìm con liên tiếp

Hướng dẫn cách Debug trong Free Pascal

Tìm kiếm nhị phân (Binary Search)