小c居士 2013-09-17 03:37 采纳率: 0%
浏览 901

poj上总是答案错误题号是1002 487-3279

错误的地方很有可能出现在我标记的地方(见程序),但是我本人找不出来,求帮忙!求指教输出就是不对不知道什么原因。
#include
#include
#include
#include
using namespace std;
int LetterToInt[26]=
{
2,2,2,
3,3,3,
4,4,4,
5,5,5,
6,6,6,
7,7,7,7,
8,8,8,
9,9,9
};

int DiaNum[100000];
int Numcounter[100000];

int main()
{
int i,j,n;
while(scanf("%d",&n ) != EOF)//设置文件输入终止条件
{
DiaNum[n]=0x7FFFFFFF;
Numcounter[n]=0;
char str[20];
for (i=0 ; i {
DiaNum[i]=0;
Numcounter[i]=0;
cin>>str;

      /*可能就是下面这段错了*/
        for(int j=0;str[j]!='\0';++j)
        {
            if(str[j]>='0' && str[j] <= '9' )//如果输入为数字
                DiaNum[i]=DiaNum[i]*10+str[j]-'0';
            if(str[j]>='A'&&str[j]<='Z')//如果输入为字母
                DiaNum[i]=DiaNum[i]*10+LetterToInt[str[j]-'A'];
        }
    }
    //后面一段代码是控制输出
        sort(DiaNum,DiaNum+n);//排序
        bool exist=false;
        for(i=0,j=0;i<=n;)
        {
            if(DiaNum[j]==DiaNum[i])
            {
                ++i;
                Numcounter[j]++;
            }
            else
            {
            if(Numcounter[j]>1)
            {
                exist = true;
                cout<<DiaNum[i]/10000<<"-"<<DiaNum[i]%10000<<" "<<Numcounter[j]<<endl;

            }j=i;

            }
        }
        if(!exist)

            cout<<"No duplicates\n";
}
return 0;

}

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2022-09-20 23:48
    关注
    不知道你这个问题是否已经解决, 如果还没有解决的话:

    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论

报告相同问题?

悬赏问题

  • ¥50 如何增强飞上天的树莓派的热点信号强度,以使得笔记本可以在地面实现远程桌面连接
  • ¥15 MCNP里如何定义多个源?
  • ¥20 双层网络上信息-疾病传播
  • ¥50 paddlepaddle pinn
  • ¥20 idea运行测试代码报错问题
  • ¥15 网络监控:网络故障告警通知
  • ¥15 django项目运行报编码错误
  • ¥15 STM32驱动继电器
  • ¥15 Windows server update services
  • ¥15 关于#c语言#的问题:我现在在做一个墨水屏设计,2.9英寸的小屏怎么换4.2英寸大屏