Trang 4 của 4 Đầu tiênĐầu tiên ... 234
Kết quả 31 đến 39 của 39
  1. #31
    Ngày tham gia
    Mar 2016
    Bài viết
    4
    Trích dẫn Gửi bởi khaimy123
    Nhưng mà số từ 1 -> n, test 10: n=98765432100123456789
    Nối lại chắc dài hơn 256 kí tự rồi.
    Híc, mình nói hoài bạn vẫn không hiểu ý mình.
    KHÔNG NỐI LẠI
    Việc dùng string là khi số đó vượt qua 30 chữ số (int64).
    Xét 1 số làm 2 việc:
    + In
    + Cộng tổng.
    Đâu có bắt bạn nối lại để làm gì đâu????

  2. #32
    Ngày tham gia
    Aug 2015
    Bài viết
    3
    Thực ra những cách làm trên chỉ sử dụng sức mạnh của máy tính. Vì vậy chỉ có thể tính được một vài số thôi. Còn thuật toán do con người nghĩ ra có thể tính được những số rất lớn.
    Từ đề bài, ta có nhận xét:
    Từ 1 ->9 có khoảng một số một, hai số 2,..
    Từ 10 -> 100 có khoảng 20 số 1; ... số 2; .. số 3;...
    Từ 100 -> 1000 có bao nhiêu số 1, 2, 3...
    Cứ như vậy mà ta tìm ra quy luật của nó và chuyển thành thuật toán.
    Những cách làm của Shiro, HappSoftGroup,... nói chung là cũng được nhưng nó còn thủ công quá...!! :lick: Nó chỉ đúng theo yêu cầu bài thôi chứ theo thuật toán thì...[IMG]data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAA l21bKAAAAA1BMVEXh5PJm+yKVAAAAAXRSTlMAQObYZgAAAApJR EFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=[/IMG])

  3. #33
    Ngày tham gia
    Aug 2015
    Bài viết
    2
    Trích dẫn Gửi bởi pe_heo_55
    Thực ra những cách làm trên chỉ sử dụng sức mạnh của máy tính. Vì vậy chỉ có thể tính được một vài số thôi. Còn thuật toán do con người nghĩ ra có thể tính được những số rất lớn.
    Từ đề bài, ta có nhận xét:
    Từ 1 ->9 có khoảng một số một, hai số 2,..
    Từ 10 -> 100 có khoảng 20 số 1; ... số 2; .. số 3;...
    Từ 100 -> 1000 có bao nhiêu số 1, 2, 3...
    Cứ như vậy mà ta tìm ra quy luật của nó và chuyển thành thuật toán.
    Những cách làm của Shiro, HappSoftGroup,... nói chung là cũng được nhưng nó còn thủ công quá...!! :lick: Nó chỉ đúng theo yêu cầu bài thôi chứ theo thuật toán thì...[IMG]data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAA l21bKAAAAA1BMVEXh5PJm+yKVAAAAAXRSTlMAQObYZgAAAApJR EFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=[/IMG])
    Kaka, bạn lầm to. Đọc chưa hết mà đã nói rồi! Cách này mình đề cử trước nhá! Xin mời bạn đọc lại!

  4. #34
    Ngày tham gia
    Nov 2015
    Bài viết
    0
    à, cách làm này hay đấy. Cho em xin code với.

  5. #35
    Ngày tham gia
    Aug 2015
    Bài viết
    2
    Trích dẫn Gửi bởi pe_heo_55
    Thực ra những cách làm trên chỉ sử dụng sức mạnh của máy tính. Vì vậy chỉ có thể tính được một vài số thôi. Còn thuật toán do con người nghĩ ra có thể tính được những số rất lớn.
    Từ đề bài, ta có nhận xét:
    Từ 1 ->9 có khoảng một số một, hai số 2,..
    Từ 10 -> 100 có khoảng 20 số 1; ... số 2; .. số 3;...
    Từ 100 -> 1000 có bao nhiêu số 1, 2, 3...
    Cứ như vậy mà ta tìm ra quy luật của nó và chuyển thành thuật toán.
    Những cách làm của Shiro, HappSoftGroup,... nói chung là cũng được nhưng nó còn thủ công quá...!! :lick: Nó chỉ đúng theo yêu cầu bài thôi chứ theo thuật toán thì...[IMG]data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAA l21bKAAAAA1BMVEXh5PJm+yKVAAAAAXRSTlMAQObYZgAAAApJR EFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=[/IMG])
    Ừm đây là việc toán học hóa công thức hoá 1 bài toán tin, nhưng mình liệu hỏi việc bạn khai thác sức mạnh máy tính với thuật toán xử lý số lớn và kết hợp kiểu dữ liệu chuỗi (string trong pascal) với việc bạn công thức hoá bài toán thì có điểm gì ưu và nhược?
    Xin đáp:
    Ưu điểm công thức hoá: độ phúc tạp nói chung là O(1) hằng số => cực kỳ tốt cho những bài không nghĩ ra thuật toán hoặc độ phức tạp quá cao ( hàm mũ , cấp số nhân ... )
    Nhược: việc công thức hoá không phải lúc nào cũng thành công, việc chứng minh công thức cũng không phải là vấn đề cho phép về mặt thời gian. Chỉ khi những công thức được thừa nhận thì cách này tỏ ra vô cùng hữu hiệu.
    Xin bạn xem lại [IMG]data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAA l21bKAAAAA1BMVEXh5PJm+yKVAAAAAXRSTlMAQObYZgAAAApJR EFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=[/IMG]

  6. #36
    Ngày tham gia
    Nov 2015
    Bài viết
    25
    Trước kia thi pascal, muốn áp dụng một công thức mới, họ phải chứng minh cho ra công thức rồi mới được dùng. Hiện nay thì thoáng hơn một tí!

  7. #37
    Ngày tham gia
    Nov 2015
    Bài viết
    0
    asdf

    bài này giải được test 12 và 123 còn các test từ 2468 trở lên thì pascal tự thoát.
    ai bit thì chỉ? nhé.
    program tong_day_so;
    var
    i,j,n,m,k,l:longint;
    fi,fi1,fo:text;
    s,s1,s2:string;
    a:array[1..100] of longint;
    function tostr(i: Longint): String;
    var
    S: string[11];
    begin
    Str(i,s);
    tostr := s;
    end;
    begin
    assign(fi,'tds.inp');
    reset(fi);
    n:=0;
    i:=0;
    while not(eof(fi))=true do
    begin
    inc(i);
    read(fi,a);
    s:=s+tostr(a);
    inc(n)
    end;
    close(fi);
    l:=0;
    { if n<100000000 then}
    for i:=1 to n do
    l:=l+a;
    assign(fo,'tds.out');
    rewrite(fo);
    writeln(fo,s);
    writeln(fo,l);
    close(fo);
    end.

    còn đây là program tao file:
    program tao_file;
    var
    i,j,m,n:longint;
    fo:text;
    s,k:string;
    function tostr(i: Longint): String;
    var
    S: string[11];
    begin
    Str(i,s);
    tostr := s;
    end;
    begin
    assign(fo,'tds.inp');
    rewrite(fo);
    writeln('nhap n:');
    readln(n);
    for i:=1 to n do
    begin
    k:=tostr(i);
    for j:=1 to length(k) do
    writeln(fo,k[j]);
    end;
    close(fo);
    end.
    :book::book::book::book::book::book::book::book::b ook::book:
    nhớ thank nhé! cảm ơn nhìu![IMG]data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAA l21bKAAAAA1BMVEXh5PJm+yKVAAAAAXRSTlMAQObYZgAAAApJR EFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=[/IMG][IMG]data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAA l21bKAAAAA1BMVEXh5PJm+yKVAAAAAXRSTlMAQObYZgAAAApJR EFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=[/IMG][IMG]data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAA l21bKAAAAA1BMVEXh5PJm+yKVAAAAAXRSTlMAQObYZgAAAApJR EFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=[/IMG][IMG]data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAA l21bKAAAAA1BMVEXh5PJm+yKVAAAAAXRSTlMAQObYZgAAAApJR EFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=[/IMG][IMG]data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAA l21bKAAAAA1BMVEXh5PJm+yKVAAAAAXRSTlMAQObYZgAAAApJR EFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=[/IMG][IMG]data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAA l21bKAAAAA1BMVEXh5PJm+yKVAAAAAXRSTlMAQObYZgAAAApJR EFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=[/IMG][IMG]data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAA l21bKAAAAA1BMVEXh5PJm+yKVAAAAAXRSTlMAQObYZgAAAApJR EFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=[/IMG][IMG]data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAA l21bKAAAAA1BMVEXh5PJm+yKVAAAAAXRSTlMAQObYZgAAAApJR EFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=[/IMG][IMG]data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAA l21bKAAAAA1BMVEXh5PJm+yKVAAAAAXRSTlMAQObYZgAAAApJR EFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=[/IMG]

  8. #38
    Ngày tham gia
    Aug 2015
    Bài viết
    2
    Trích dẫn Gửi bởi jonhenry1324
    bài này giải được test 12 và 123 còn các test từ 2468 trở lên thì pascal tự thoát.
    ai bit thì chỉ? nhé.
    program tong_day_so;
    var
    i,j,n,m,k,l:longint;
    fi,fi1,fo:text;
    s,s1,s2:string;
    a:array[1..100] of longint;
    function tostr(i: Longint): String;
    var
    S: string[11];
    begin
    Str(i,s);
    tostr := s;
    end;
    begin
    assign(fi,'tds.inp');
    reset(fi);
    n:=0;
    i:=0;
    while not(eof(fi))=true do
    begin
    inc(i);
    read(fi,a);
    s:=s+tostr(a);
    inc(n)
    end;
    close(fi);
    l:=0;
    { if n<100000000 then}
    for i:=1 to n do
    l:=l+a;
    assign(fo,'tds.out');
    rewrite(fo);
    writeln(fo,s);
    writeln(fo,l);
    close(fo);
    end.

    còn đây là program tao file:
    program tao_file;
    var
    i,j,m,n:longint;
    fo:text;
    s,k:string;
    function tostr(i: Longint): String;
    var
    S: string[11];
    begin
    Str(i,s);
    tostr := s;
    end;
    begin
    assign(fo,'tds.inp');
    rewrite(fo);
    writeln('nhap n:');
    readln(n);
    for i:=1 to n do
    begin
    k:=tostr(i);
    for j:=1 to length(k) do
    writeln(fo,k[j]);
    end;
    close(fo);
    end.
    :book::book::book::book::book::book::book::book::b ook::book:
    nhớ thank nhé! cảm ơn nhìu![IMG]data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAA l21bKAAAAA1BMVEXh5PJm+yKVAAAAAXRSTlMAQObYZgAAAApJR EFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=[/IMG][IMG]data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAA l21bKAAAAA1BMVEXh5PJm+yKVAAAAAXRSTlMAQObYZgAAAApJR EFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=[/IMG][IMG]data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAA l21bKAAAAA1BMVEXh5PJm+yKVAAAAAXRSTlMAQObYZgAAAApJR EFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=[/IMG][IMG]data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAA l21bKAAAAA1BMVEXh5PJm+yKVAAAAAXRSTlMAQObYZgAAAApJR EFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=[/IMG][IMG]data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAA l21bKAAAAA1BMVEXh5PJm+yKVAAAAAXRSTlMAQObYZgAAAApJR EFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=[/IMG][IMG]data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAA l21bKAAAAA1BMVEXh5PJm+yKVAAAAAXRSTlMAQObYZgAAAApJR EFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=[/IMG][IMG]data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAA l21bKAAAAA1BMVEXh5PJm+yKVAAAAAXRSTlMAQObYZgAAAApJR EFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=[/IMG][IMG]data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAA l21bKAAAAA1BMVEXh5PJm+yKVAAAAAXRSTlMAQObYZgAAAApJR EFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=[/IMG][IMG]data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAA l21bKAAAAA1BMVEXh5PJm+yKVAAAAAXRSTlMAQObYZgAAAApJR EFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=[/IMG]

    Đề nghị bạn đặt code trong thẻ
    Mã:
    . 
    Chúc bạn vui vẻ!

  9. #39
    Ngày tham gia
    Nov 2015
    Bài viết
    0
    đang chán đời dc mỗi giải 3 reply (29/3/2011)

    tui thấy bài này có j` đâu khá dễ vấn đề ở đây là dữ liệu lớn như vậy cái tổng minh sẽ cho nó là int64 hay Qword thì cũng dc cái này quan trọng nè là mình sẽ tự tạo các số trong chữ số thập phân.
    while (s<>kq) do {kq là giới hạn của dãy min` mun' tính string nhaz}
    begin
    d:=0;
    for i:=length(S) downto 1 do {xét từ cuối dãy trở lên}
    if not kt then
    begin
    a:=ord(s)-47+d;{ d là biến nhớ lại nếu như s='9' thì d=1 }
    s:=chr( a mod 10 + 48 );
    d:=a div 10;
    kt:=d=0;
    sum:=sum+(a mod 10);{sum là biến tổng}
    if (i=1) and (not kt) then begin s:='1'+s; sum:=sum+1; end;
    end;
    end;
    đấy xong rùi nhưng muh` cách này vẫn chưa hay mình đang nghĩ dến cách tạo = mảng boolean nhưng giờ vẫn chưa ra [IMG]data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABAQMAAAA l21bKAAAAA1BMVEXh5PJm+yKVAAAAAXRSTlMAQObYZgAAAApJR EFUCNdjYAAAAAIAAeIhvDMAAAAASUVORK5CYII=[/IMG] thui đang thất vọng cấp Tp min` có hạng 3 ah` phải nhất mới đấy

Trang 4 của 4 Đầu tiênĐầu tiên ... 234

Quyền viết bài

  • Bạn Không thể gửi Chủ đề mới
  • Bạn Không thể Gửi trả lời
  • Bạn Không thể Gửi file đính kèm
  • Bạn Không thể Sửa bài viết của mình
  •