到同济大学OnLineJudge逛了一下

刚才到到同济大学OnLineJudge逛了一下,不错啊,特别是对于打基础的我们(好高骛远的大学生们),里边的练习题真应该好好琢磨琢磨啊。
顺便申请了一个帐号,并做了一道题(呵呵,选的是最简单的哈)
-----------------------------------------------------
Problem
输入N值,编程输出如下图形。

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

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

Sample Input
3

Sample Output
    Z
  Y   X
W       V
  U   T
    S

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

我的解答很勉强,但幸运的是第一次就被Accept了:

/*
此解答已经通过TongJi_OnlineJudge编译并被接收
Memory   Time 
 44k     1ms
zhouyinhui 2006-5-4
*/

#include<iostream>

using namespace std;

int main(void)
{

        int n;
 cin>>n;

 char ch = 'Z';
 int i;

 for(i=0; i<(n<<1)-1; i++)
 {
  int p;

  for(p=0; p<abs((n-i-1)<<1); p++)
  {
   cout<<' ';
  }

  cout<<ch--;

  if(i==0 || i==(n<<1)-2)
  {
   cout<<endl;
   continue;
  }
  
  int t = (i>=n)?(((n-1)<<1)-i):i;

  for(p=0; p<((t<<2)-1); p++)
  {
   cout<<' ';
  }

  cout<<ch--<<endl;
 }

 return 0;
}


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

大力推荐此网站哈,做做上面的题,至少比玩那些野蛮游戏有意义得多哈

同济大学OnLine Judge:http://acm.tongji.edu.cn/

posted @ 2006-05-04 03:23  周银辉  阅读(827)  评论(0编辑  收藏  举报