A nào làm bài này chỉnh sửa giùm e cái code

const fi='TABLE.inp';
      fo='TABLE.out';
      maxn=1000;
      maxt=1000000000000000;
var f,g:text;
    n,k:integer;
    i,j,c,dem,dem1,t:int64;
    z:Longint;
    S2,S3,S4:string;
    S:ansistring;
Function sokt(x:int64):byte;
begin
sokt:=0;
While x>0 do
begin
sokt:=sokt+1;
x:=x div 10;
end;
end;

Function luythua(x:byte):int64;
begin
If x=1 then exit(10);
luythua:=luythua(x-1)*10;
end;

Function doi(x:int64):string;
begin
S4:='';
While x<>0 do
begin
str(x mod 10,S3);
S4:=S4+S3;
x:=x div 10;
end;
doi:=S4;
end;

Procedure Xuli;
var z:Longint;
begin
i:=1;
S:='';
dem:=0;j:=9;
While dem<t do
begin
dem:=dem+i*j;
inc(i);
If (j*10*i+dem)<t then
j:=10*j
else break;
end;
If (t-dem) mod i=0 then
c:=luythua(i-1)+((t-dem) div i)-1
else c:=luythua(i-1)+((t-dem) div i);
k:=0;
While k<(n+(t-dem) mod i) do
begin
S:=S+doi(c);
inc(k,sokt(c));
dec(c);
end;
If k=n then
for z:=n downto 1 do
Write(g,S[z])
else
If (t-dem) mod i=0 then begin
for z:=n downto 1 do
Write(g,S[z]);
end
else
begin
for z:=n+i-((t-dem) mod i) downto i-((t-dem) mod i)+1  do
Write(g,S[z]);
end;
end;

Begin
Assign(g,fo);
Rewrite(g);
Assign(f,fi);
Reset(f);
Readln(f,n,t);
If (n>=t) then begin
for z:=1 to t do Write(g,z);
close(g);
exit;
end
else
If (t<=9) then begin
for z:=t-n+1 to t do Write(g,z);
close(g);
exit;
end
else
Xuli;
close(f);
close(g);
end.

 

Chỉ được 77.14/100 ---------------- Mong được sự giúp đỡ !

Thành thật mà nói bạn ném code lên thế này thì mình chắc là chẳng có ai rảnh mà xem hộ bạn đâu :v

Thành thật mà nói bạn ném code lên thế này thì mình chắc là chẳng có ai rảnh mà xem hộ bạn đâu :v

Để có thể nhận được sự giúp đỡ từ mọi người, bạn cũng nên đặt câu hỏi rõ ràng hơn vì thực sự nhìn vào Code này mình (và mình cũng đoán là nhiều người khác) chả hiểu bạn đang làm cái gì hay viết cái gì. Nếu bạn không bỏ thời gian ra chỉnh chu câu hỏi của mình thì có lẽ cũng không thể mong muốn người khác trả lời bạn một cách chỉnh chu được.  Mình nghĩ các bước sau có thể giúp bạn đặt câu hỏi một cách rõ ràng hơn:

1.  Mổ tả ngắn gọn bài toán (nếu có thể).

2. Ý tưởng bạn đang sử dụng để giải quyết bài toán. Bạn nên liệt kê các bước mà bạn giải quyết bài toán theo từng bước. Trong mỗi bước đó, bạn sử dụng cấu trúc dữ liệu gì và như thế nào. Nếu có thể thí cắt luôn một đoạn code snippet trong chương trình của bạn để mô tả ý tưởng đó.

3. Post code đầy đủ cuối cùng. Code nên post ở trong code environment thì sẽ dễ nhìn hơn. Spacing, các dấu ngoặc và xuống dòng nên rõ ràng như bạn đang code ở trong IDE.

 

Nếu bạn làm theo được các bước như trên thì bản thân bạn cũng sẽ coi như tự review lại code của mình một lần và biết đâu sẽ tự tìm ra bug.

Bạn có thể tham khảo thêm cách đặt câu hỏi ở một bài viết trước ở diễn đàn http://vnoi.info/forum/18/4980/. Mặc dù post này vẫn có nhiều tranh cãi khác nhau nhưng nếu làm theo được (càng nhiều càng tốt) thì khả năng bạn sẽ nhận được câu trả lời nhanh chóng  và hữu ích sẽ rất cao.