深信服c++笔试

题目1: 魔法棒
题目2:字符串修改

第一题 int 改为 long 可以AC
第二题 自测ok,case通过一直为 0
有没有大佬贴下第二题AC代码~

我先贴上我的,哭了
#include <iostream>
#include <sstream>
using namespace std;
int main() {
    long n;
    string s;
    cin>>s;
    cin>>n;
    
    int res[10]={-1,-1,-1,-1,-1,-1,-1,-1,-1,-1};
    while(n-->0){
        
        int a,b;
        cin>>a>>b;
        res[a] = b;
        
        for(int i=0;i<10;i++){
            if(res[i]==a){
                res[i] = b;
            }
                
        }
    }
    for(long i=0;i<s.size();i++){
        int index = s[i] - '0';
        if(res[index]!= -1)
            s[i] = (res[index]) + '0';
    }
    cout<< s;
    return 0;
}


#笔试题目##深信服#
全部评论
第一题是每个值减去最小值的总和吗
1 回复 分享
发布于 2020-08-25 21:16
粗看似乎没问题,是循环输入吗,你看下我的https://www.nowcoder.com/discuss/488624
1 回复 分享
发布于 2020-08-25 21:11
是这种情况不能通过,比如先输入1-9,再输入1-3。你直接把m(a)=b就不对了。因为1-9替换后就没有1了,1-3就没有可替换的了。我也是晚上才想明白这个地方。删除掉第一个m{a}=b。就能通过。
点赞 回复 分享
发布于 2020-08-26 00:42
初值不能给-1,初值应该是0-9,一开始是一一对应的,这种写法,第一组输入就没处理
点赞 回复 分享
发布于 2020-08-25 21:34
维护一个转化数组
点赞 回复 分享
发布于 2020-08-25 21:20
第一题我是找规律, 通过了
点赞 回复 分享
发布于 2020-08-25 21:19
第二题并查集,50%😂,先做的第二题,时间都在调试了,最后也没到100%,第一题没做了
点赞 回复 分享
发布于 2020-08-25 21:15
服了,第一题没想到long,一直过不了,吐了
点赞 回复 分享
发布于 2020-08-25 21:13
第二题跟你一样测试用例通过但通过率为0,用哈希表的方法
点赞 回复 分享
发布于 2020-08-25 21:10
感觉没毛病…
点赞 回复 分享
发布于 2020-08-25 21:09
思路一样,0%...
点赞 回复 分享
发布于 2020-08-25 21:08
我和你一样 但是卡在了 10%。。。
点赞 回复 分享
发布于 2020-08-25 21:05

相关推荐

珩珺:那些经历都太大太空了,实习的情况不了解,大创项目连名字、背景、目的及意义都没体现出来;地摊经济更是看完连卖的什么产品都不知道,项目成果直接写营收多少都更直观真实一点;后面那个校文体部的更是工作内容是组织活动整理流程,成果变成了当志愿者,而且你们学校本科学生会大一入学就直接当部长吗,志愿里面还提到了疫情防控,全面解封是22年12月的事情,可能时间上也有冲突。可能你花了钱人家就用AI给你随便写了点内容改了一下,没什么体现个性化的点
点赞 评论 收藏
分享
评论
点赞
3
分享

创作者周榜

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