美团笔试、第二题成功AC。

1、输出满足条件的逆序对
2、并查集求旅行次数
3、外卖小区
4、车辆调度
5、装饰
第一题有没有AC的代码,分享一下。

第二题代码成功AC
这个的思路就是,一趟旅行,就是一个循环,然后遍历有几个循环就行了。
#include<iostream>
#include<vector>
#include<algorithm>
using namespace std;
int main(){
    int count;
    cin>>count;
    vector<pair<string,string>>res;
    string str1,str2;
    for(int i = 0;i < count;i++){
        cin>>str1>>str2;
        res.push_back({str1,str2});
    }
    int len = 1;
    count = res.size();
    for(int i = 0;i < count - 1;i++){
        if(res[i].second != res[i + 1].first)len++;
    }
    cout<<len<<endl;
    return 0;
}


#笔试题目##美团#
全部评论
lz的第二题感觉问题,如果是这样的case就不对了: a b b a a b b a 这种情况应该是两次旅行,但是你的代码会输出一次吧
2 回复 分享
发布于 2020-08-15 22:54
我用的栈,ac了,地点和栈顶元素相同就出栈,否则进栈,记录栈为空的次数就是旅行次数 public static void main(String[] args) {   Scanner sc=new Scanner(System.in);   int n=sc.nextInt();   Stack<String> stack=new Stack<String>();   stack.push(sc.next());   int count=0;   for(int i=1;i<2*n;i++){    String str=sc.next();    if(!stack.isEmpty()&&str.equals(stack.peek())){     stack.pop();    }else{     stack.push(str);    }    if(stack.isEmpty()){     count++;    }   }   System.out.println(count);  }.
2 回复 分享
发布于 2020-08-18 15:42
居然这么简单,我用邻接表+DFS做的,关键还没过😂
1 回复 分享
发布于 2020-08-15 21:17
原来旅行记录是顺序排列的额...
点赞 回复 分享
发布于 2020-08-15 20:07
char* ch1=new char(10); char* ch2=new char(10); char* ch=new char(10); int count(0); for(int i=0;i<n;i++){      scanf("%s %s",ch1,ch2);      while(strcmp(ch1,ch2)!=0){      scanf("%s %s",ch,ch2);      i++; }      count++; } cout<<count;
点赞 回复 分享
发布于 2020-08-15 20:10
有没有具体的题目描述啊
点赞 回复 分享
发布于 2020-08-15 20:35
其实第二题就比较旅游开始和旅游结束的字符串相等
点赞 回复 分享
发布于 2020-08-15 21:41

相关推荐

09-22 19:03
南昌大学 Java
第一个offer是迪子发的,但是高兴不起来
捡走一只羊:就像:好久没谈念爱了,突然有个不喜欢的女生给自己表白
点赞 评论 收藏
分享
09-18 22:04
已编辑
蚌埠坦克学院 C++
OfferLimitedExceeded:scanf算stdio库的,不导入的话自己写个scanf变量或者函数编译器应该可以通过
点赞 评论 收藏
分享
Crank_:如果上面写的确实都会的话,这简历无敌
点赞 评论 收藏
分享
1 7 评论
分享
牛客网
牛客企业服务