Diễn đàn tin học Nguyễn Văn Linh

The second house for every one
 
IndexTrợ giúpTìm kiếmThành viênĐăng kýĐăng Nhập

Share | 
 

 tongk

Xem chủ đề cũ hơn Xem chủ đề mới hơn Go down 
Tác giảThông điệp
littlelee
Admin
Admin


Tổng số bài gửi : 415
Join date : 20/12/2009
Age : 21
Đến từ : Nghĩa địa

Bài gửiTiêu đề: tongk   Fri 16 Jul 2010, 16:17

Code:
program so_n_chu_so_co_tong_bang_k;
const fi='tongk.inp';
      fo='tongk.out';
var l:array[0..4,0..5] of longint;
    i,j,n,m,k,g,gt,ht,h,cs,p:longint; f:text;

procedure nhap;
 begin
  assign(f,fi);
  reset(f);
  readln(f,n,k,p);
  close(f);
 end;

procedure qhd;
 begin
  for i:=0 to n do for j:=1 to k do l[i,j]:=0;
  for i:=0 to k do
  if i<=9 then l[1,i]:=1;
  for i:=1 to n do l[i,0]:=1;

  for i:=2 to n do
  for j:=1 to k do
    for m:=0 to 9 do
    begin
      if j-m>=0 then
      l[i,j]:=l[i,j]+l[i-1,j-m];
      if l[i,j]>1000000000 then l[i,j]:=1000000001;
    end;
 end;

procedure tinh;
 begin
  qhd;

  l[0,0]:=1;
  g:=0; cs:=0; i:=0;
  while cs<p do
  begin
    inc(i);
    cs:=l[i,k];
  end;
  cs:=i; gt:=0; h:=k;
  for i:=1 to cs do
  begin
    j:=-1;
    while (gt<p)and(j<9)and(j<h) do
    begin
      inc(j); ht:=gt;
      gt:=gt+l[cs-i,h-j];
    end;
    {if gt>p then begin gt:=gt-l[i-1,k-j]; dec(j); end;}
    gt:=ht;
    g:=g*10+j; h:=h-j;
  end;
 end;

procedure xuat;
 begin
  assign(f,fo);
  rewrite(f);
  if l[i,j]<=1000000000 then writeln(f,l[n,k])
  else writeln(f,'tren 10^9');
  writeln(f,g);
  close(f);
 end;

begin
 nhap;
 tinh;
 xuat;
end.
Về Đầu Trang Go down
Hovanthong
Admin
Admin


Tổng số bài gửi : 101
Join date : 25/07/2010
Age : 22
Đến từ : Hưng nguyên-Nghệ An

Bài gửiTiêu đề: Re: tongk   Mon 26 Jul 2010, 21:53

Trích dẫn :
Bạn nên ghi đề cho người khác thấy với chứ!
Về Đầu Trang Go down
http://thongtra.forum-viet.com
 
tongk
Xem chủ đề cũ hơn Xem chủ đề mới hơn Về Đầu Trang 
Trang 1 trong tổng số 1 trang

Permissions in this forum:Bạn không có quyền trả lời bài viết
Diễn đàn tin học Nguyễn Văn Linh :: Góc tin học :: Lớp chuyên tin-
Chuyển đến