B站笔试题

挺简单的题
1. 按反转单词的顺序 ab cd -> cd ab
#include <iostream>
#include <map>
#include <string>
#include <vector>
#include <sstream>
using namespace std;

int main() {
    string s,ans;
    getline(cin,s);
    stringstream ss;
    ss<<s;

    s.clear();
    while(ss>>s) {

        if(!ans.empty())  s+= " ";
        ans = s+ans;
    }

    cout<<ans;
    return 0;
}


2, 输出数组组合出的最小数  123 12-> 12123
#include <iostream>
#include <map>
#include <string>
#include <vector>
#include <algorithm>

using namespace std;

#define MAX_N = 10010;

bool cmp(string &a, string &b) {
    return a+b<b+a;
}

int main() {
    vector<string> vs;
    vector<int> va;
    string s,ans;
    int d=0;
    scanf("%d",&d);
    va.push_back(d);
    while(scanf(",%d",&d)) {
        va.push_back(d);
    }
    vs.resize(va.size());
    for(int i=0;i<va.size();i++) {
        vs[i] = to_string(va[i]);
    }
    sort(vs.begin(),vs.end(),cmp);
    for(auto ts: vs) {
        ans+=ts;
    }
    while(ans[0] == '0') ans.erase(ans.begin());
    cout<<ans;
    return 0;;
}

3. 01背包原题
#include <iostream>
#include <map>
#include <string>
#include <vector>
#include <algorithm>

using namespace std;

#define MAX_N = 10010;


int main() {
    int N,M;
    cin>>N>>M;
    vector<int> c(N),v(N);
    for(int i=0;i<N;i++) {
        cin>>c[i];
    }
    for(int i=0;i<N;i++) {
        cin>>v[i];
    }

    vector<vector<int>> dp(N+1,vector<int>(M,0));

    for(int i=1;i<=N;i++) {
        for(int j=0; j <= M; j++) {
            dp[i][j] = dp[i-1][j];
            if(j>=c[i-1]) dp[i][j] = max(dp[i][j],dp[i-1][j-c[i-1]] + v[i-1]);
        }
    }
    cout<<dp[N][M];

    return 0;;
}


#笔试题目#
全部评论
简单又嫌弃太简单,难了又嫌弃太难了,是不是******
点赞 回复 分享
发布于 2019-08-20 21:02
第一次AK给了B站😶😶
点赞 回复 分享
发布于 2019-08-20 20:51
这也太简单了,醉了。
点赞 回复 分享
发布于 2019-08-20 20:49
不想招人嘛?
点赞 回复 分享
发布于 2019-08-20 20:47
看到这题目后悔把笔试推到下个月了😂
点赞 回复 分享
发布于 2019-08-20 20:37
都是原题。。
点赞 回复 分享
发布于 2019-08-20 20:17

相关推荐

03-31 15:06
已编辑
安徽大学 Java
说下我自己的经历吧,211计算机,现在大四,秋招上岸。大二下的时候看到室友去字节实习了,我当时就急了。那段时间疯狂投简历,Boss直聘、实习僧、牛客全都刷了一遍,一个月投了30多家,结果呢——已读不回是常态,少数几个给了笔试机会,做完也没下文。当时真的很焦虑,觉得自己是不是完了。后来冷静下来复盘,发现自己就是个&quot;空壳选手&quot;:数据结构学了但没刷题,项目经历只有课设,八股文背了一半记住的不到三成。说白了,大二的我以为&quot;投简历&quot;就是找实习,但其实&quot;有东西可写&quot;才是找实习的前提。大二暑假没实习成,但那个暑假是我大学最充实的两个月。白天刷题晚上做项目,LeetCode前150题过了一遍,跟着B站撸了一个完整的SpringBoot+Vue全栈项目从0到部署,牛客面经整理了一份自己的高频题文档。虽然没去实习,但这两个月补上的东西比大二一整年学的都多。大三上学期再投的时候,明显不一样了。简历有东西写了,面试也能聊几句了。最后拿到了一家中厂的后端实习,虽然不是大厂,但真正进了业务组写代码的感觉,比在学校写课设完全是两个世界。后来大三下春招拿到了大厂暑期实习offer,秋招也顺利上岸。所以我的结论是:大三上是性价比最高的实习时间点。大一大二基础没打好,就算进去了也只能打杂,简历上也不好写。大三上投实习,大三下暑期实习,秋招直接转正或者带实习经历投,时间线刚好。而且太早实习牺牲绩点不划算,很多大厂筛简历第一关就是GPA。当然每个人情况不一样,如果你大二就有完整项目+算法基础,那早投也没问题。但对大多数普通同学来说,与其焦虑&quot;别人都实习了我还没有&quot;,不如先问自己&quot;我现在去实习能干啥&quot;。想早不如想好。共勉。
你觉得大几开始实习最合适...
点赞 评论 收藏
分享
评论
点赞
9
分享

创作者周榜

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