CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  C/C++ >  C++ 语言

同济ACM上的两道入门题,用例子测试是正确的.但是却报告Wrong Answer

楼主Azure_ceil(天蓝)2006-05-03 14:25:06 在 C/C++ / C++ 语言 提问

同济上的两道题  
   
  测试地址http://acm.tongji.edu.cn/problem.php  
   
  给的测试都对了。可是老是说Wrong   Answer。请大虾帮忙看下.谢谢    
   
  ******************************************************  
  我想问的是我的代码错在哪里,而不是要正确答案.  
  正确答案网上找的到.谢谢各位大虾先~  
  *******************************************************  
  蛇行矩阵   1009  
  #include   <iostream.h>  
   
  int   main()  
  {  
  int   max;  
  cin>>max;  
  int   p[100][100];  
  int   i,j;  
  p[0][0]=1;  
  for(i=1;i<max;i++)  
      p[i][0]=p[i-1][0]+i;  
  for(i=0;i<max;i++)  
        for(j=1;j<max-i;j++)  
          {  
    p[i][j]=p[i][j-1]+j+i+1;  
          }  
  for(i=0;i<max;i++)  
    {   for(j=0;j<max-i;j++)  
      {  
          cout<<p[i][j];  
          if(j<max-i-1)  
          cout<<"   ";  
      }  
        cout<<endl;  
    }  
  return   0;  
  }  
     
   
  敲七   1006    
   
  #include   <iostream.h>  
   
  int   PD(unsigned   int   x)  
  {  
      unsigned   int   i;  
      i=x;  
      if(i>=7)  
      {  
          if(i%7==0)  
              return   1;  
          else   if(i%10==7)  
              return   1;  
          else  
          {  
            if(x%10==0)  
              if(PD(i/10))  
                return   1;  
          }  
      }  
      return   0;  
  }  
   
   
  int   main()  
  {  
  unsigned   int   input,i;  
  cin>>input;  
  for(i=input;i>=7;i--)  
  if(PD(i))   cout<<i<<endl;  
  return   0;  
  } 问题点数:45、回复次数:5Top

1 楼syy6()回复于 2006-05-03 14:26:34 得分 1

不知道。  
  看来楼上是校友。Top

2 楼A_B_C_ABC(黄瓜@YouCanDoIt)回复于 2006-05-03 19:48:25 得分 20

蛇行矩阵   1009  
  ============  
  从下载的示例程序看,应该输入多组数据,而你的只能测试一个数据,程序就退出了。  
  我只在你的程序上加了个循环,测试就返回Accepted  
   
  #include   <iostream.h>  
   
   
  int   main()  
  {  
  int   max;  
  while(cin>>max)  
  {  
  int   p[100][100];  
  int   i,j;  
  p[0][0]=1;  
  for(i=1;i<max;i++)  
  p[i][0]=p[i-1][0]+i;  
  for(i=0;i<max;i++)  
  for(j=1;j<max-i;j++)  
  {  
  p[i][j]=p[i][j-1]+j+i+1;  
  }  
  for(i=0;i<max;i++)  
  {   for(j=0;j<max-i;j++)  
  {  
  cout<<p[i][j];  
  if(j<max-i-1)  
  cout<<'   ';  
  }  
  cout<<endl;  
  }  
  }  
  return   0;  
  }Top

3 楼A_B_C_ABC(黄瓜@YouCanDoIt)回复于 2006-05-03 19:57:15 得分 14

敲七   1006    
  =========  
  你的程序,当输入77时,不显示71,72,73,74,75,76Top

4 楼braveconf()回复于 2006-05-03 21:12:27 得分 10

else  
          {  
            if(x%10==0)  
              if(PD(i/10))  
                return   1;  
          }  
   
   
  这里错了Top

5 楼Azure_ceil(天蓝)回复于 2006-05-03 22:35:27 得分 0

黄瓜兄,谢谢   ~  
   
  你到下面的贴子也留个言.我把那40分也给你~  
   
  http://community.csdn.net/Expert/topic/4728/4728198.xml?temp=.1958429  
   
   
   
   
  #include   <iostream>  
  using   namespace   std;  
   
  int   PD(unsigned   int   x)  
  {  
      unsigned   int   i;  
      i=x;  
      if(i>=7)  
      {  
          if(i%7==0)  
              return   1;  
  //         else   if(i%10==7)  
  //             return   1;  
  int   temp=i;  
          while(temp>6)  
          {  
                  if(temp%10==7)  
                  {  
                        return   1;  
                  }  
                  temp/=10;  
          }  
   
          //else  
          //{  
          //     if(PD(i/10))  
          //       return   1;  
          //}  
      }  
      return   0;  
  }  
   
   
  int   main()  
  {  
  unsigned   int   input,i;  
  cin>>input;  
  for(i=1;i<=input;i++)  
  if(PD(i))   cout<<i<<endl;  
  cin>>input;  
  return   0;  
  }  
   
  我用注释部分也过不了程序.赫赫..Top

相关问题

关键词

得分解答快速导航

  • 帖主:Azure_ceil
  • syy6
  • A_B_C_ABC
  • A_B_C_ABC
  • braveconf

相关链接

  • C/C++ Blog
  • C/C++类图书
  • C/C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo