小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
    关注
    不知道你这个问题是否已经解决, 如果还没有解决的话:

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

报告相同问题?

悬赏问题

  • ¥15 HFSS 中的 H 场图与 MATLAB 中绘制的 B1 场 部分对应不上
  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?