回 帖 发 新 帖 刷新版面

主题:TJu1001

排版题.输出排列成菱形的字母
Time Limit:1s Memory Limit:1000k
Total Submit:14651 Accepted:4031
下载样例程序(PE)




--------------------------------------------------------------------------------

Problem
输入N值,编程输出如下图形。



Input
一个整数N(1<=N<=7)。



Output
排列成菱形的大写字符,首字符为Z,以后依次为Y,X...



Sample Input
3
Sample Output
    Z  Y   XW       V  U   T    S

以下是我的程序:

Program TJU1001;
VAR
  pos1,pos2,i,m,n,lne:byte;
  ch:array[1..24]of char;
BEGIN
  readln(n);
  for i:=1 to (4*n-4) do
    BEGIN
      ch[i]:='Z';
      dec(i);
    END;
  writeln(ch[1]:11);
  for lne:=2 to n do
    BEGIN
      pos1:=12-lne;
      pos2:=2*lne-3;
      write(ch[2*lne-2]:pos1);
      write(ch[2*lne-1]:pos2);
    END;
  for lne:=(n+1) to (2*n-2) do
    BEGIN
      pos1:=lne-2;
      pos2:=25-2*lne;
      write(ch[2*lne-2]:pos1);
      write(ch[2*lne-1]:pos2);
    END;
  writeln(ch[2*n-2]:11);
END.

可是我总是超时,规定1秒内完成,而我总是2秒才完成。这是什么原因?我该如何改进程序?

帮帮忙,多谢!

回复列表 (共1个回复)

沙发

此题输入可能不止一个,TJU 中如果 TL 是 1s, 但是你的程序 1s 内没有搞定,Judge 便在 1s 后掐掉程序。所以可能是你的程序与 Judge 的输入不同步。

我来回复

您尚未登录,请登录后再回复。点此登录或注册