为啥不一致,明明一样

答案错误:您提交程序的实际输出结果与你的期望输出不一致

自测输入

预期输出 dijkstra2************6

实际输出 dijkstra2************6

对比

。。。。。。我点对比他又提示结果正确,提交后0%。。。。。。

之前也遇到过这种情况

附件:

#include<bits/stdc++.h>using namespace std;string str(200,0);int p1,p2,p3;void print(char c,char d){if(c-d<0){char t=c;while(t<d){for(int i=0;i<p2;i++){cout<<t;}t+=1;}}else if(c-d>0){char t=c;while(t>d){for(int i=0;i<p2;i++){cout<<t;}t-=1;}}}int main(){cin>>p1>>p2>>p3;cin>>str;char c;for(int i=0;i<=str.size()-1;i++){while(i<str.size()&&str[i]!='-'){cout<<str[i];i++;}

    //p3=1;
    if(i>0&&i<str.size()-1&&str[i-1]<str[i+1]){
        if(p3==1){
            if(p1==1){
                c=str[i-1]+1;
                print(c,str[i+1]);
            }else if(p1==2){
                c=(str[i-1]-'a'+'A'+1);
                print(c,str[i+1]-'a'+'A');
            }else if(p1==3){
                c=str[i-1]+1;
                while(c<str[i+1]){
                    for(int i=0;i<p2;i++){
                        cout<<'*';
                    }
                    c+=1;
                }
            }
            //p3=2;
        }else if(p3==2){
            if(p1==1){
                c=str[i+1]-1;
                print(c,str[i+1]);
            }else if(p1==2){
                c=(str[i+1]-'a'+'A'-1);
                print(c,str[i-1]-'a'+'A'); 
            }else if(p1==3){
                c=str[i-1]+1;
                while(c<str[i+1]){
                    for(int i=0;i<p2;i++){
                        cout<<'*';
                    }
                    c+=1;
                }
            }
        }
    }
    else cout<<str[i];
    //printf("\n\tstr.size()=%d,i=%d\n",str.size(),i);
}
return 0;

}

不是题解,嘴下留情

全部评论

相关推荐

不愿透露姓名的神秘牛友
08-08 18:20
职场水母:这题思路是什么,我目前想的一个暴力方法就是先把这个链表遍历一遍,用哈希表存储出现次数,然后再根据哈希表来一个一个删除节点,
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务