Skip to content

Commit 11763b2

Browse files
committed
整理百度readme
1 parent 7a98ce5 commit 11763b2

8 files changed

+187
-2
lines changed

携程/include.h

+96
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,96 @@
1+
// C
2+
#ifndef _GLIBCXX_NO_ASSERT
3+
#include <cassert>
4+
#endif
5+
#include <cctype>
6+
#include <cerrno>
7+
#include <cfloat>
8+
#include <ciso646>
9+
#include <climits>
10+
#include <clocale>
11+
#include <cmath>
12+
#include <csetjmp>
13+
#include <csignal>
14+
#include <cstdarg>
15+
#include <cstddef>
16+
#include <cstdio>
17+
#include <cstdlib>
18+
#include <cstring>
19+
#include <ctime>
20+
21+
#if __cplusplus >= 201103L
22+
#include <ccomplex>
23+
#include <cfenv>
24+
#include <cinttypes>
25+
//#include <cstdalign>
26+
#include <cstdbool>
27+
#include <cstdint>
28+
#include <ctgmath>
29+
#include <cwchar>
30+
#include <cwctype>
31+
#endif
32+
33+
// C++
34+
#include <algorithm>
35+
#include <bitset>
36+
#include <complex>
37+
#include <deque>
38+
#include <exception>
39+
#include <fstream>
40+
#include <functional>
41+
#include <iomanip>
42+
#include <ios>
43+
#include <iosfwd>
44+
#include <iostream>
45+
#include <istream>
46+
#include <iterator>
47+
#include <limits>
48+
#include <list>
49+
#include <locale>
50+
#include <map>
51+
#include <memory>
52+
#include <new>
53+
#include <numeric>
54+
#include <ostream>
55+
#include <queue>
56+
#include <set>
57+
#include <sstream>
58+
#include <stack>
59+
#include <stdexcept>
60+
#include <streambuf>
61+
#include <string>
62+
#include <typeinfo>
63+
#include <utility>
64+
#include <valarray>
65+
#include <vector>
66+
67+
#if __cplusplus >= 201103L
68+
#include <array>
69+
#include <atomic>
70+
#include <chrono>
71+
#include <condition_variable>
72+
#include <forward_list>
73+
#include <future>
74+
#include <initializer_list>
75+
#include <mutex>
76+
#include <random>
77+
#include <ratio>
78+
#include <regex>
79+
#include <scoped_allocator>
80+
#include <system_error>
81+
#include <thread>
82+
#include <tuple>
83+
#include <typeindex>
84+
#include <type_traits>
85+
#include <unordered_map>
86+
#include <unordered_set>
87+
#endif
88+
89+
90+
//#include <bits/stdc++.h>
91+
92+
// #define LL long long
93+
// #define INT_MAX 2147483647
94+
// #define INT_MIN (-INT_MAX - 1)
95+
96+

携程/tempCodeRunnerFile.cpp

+1
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
getPath

携程/工作路径

84.5 KB
Binary file not shown.

携程/工作路径.cpp

+76
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,76 @@
1+
#include "include.h"
2+
3+
using namespace std;
4+
5+
//获取一维字符串组
6+
vector<string> getStrings(char c = ' '){
7+
vector<string> result;
8+
string str;
9+
string tmpStr;
10+
getline(cin, str);
11+
if(str.size() == 0) return result;
12+
for(int i = 0; i < str.size(); i++){
13+
if(str[i] == c){
14+
if(!tmpStr.empty()){
15+
result.push_back(tmpStr);
16+
tmpStr.clear();
17+
}
18+
continue;
19+
}
20+
tmpStr.push_back(str[i]);
21+
}
22+
result.push_back(tmpStr);
23+
return result;
24+
}
25+
26+
void getPath(vector<string> &inputs, int &k, string &tmpstr, set<char> &visited, bool &hasvis, vector<string> &result){
27+
if(k == inputs.size()){
28+
if(hasvis){
29+
result.push_back(tmpstr+"--circular dependency");
30+
}else{
31+
result.push_back(tmpstr);
32+
}
33+
return;
34+
}
35+
string str = inputs[k];
36+
for (int i = 0; i < str.size(); i++){
37+
tmpstr.push_back(str[i]);
38+
k++;
39+
auto item = visited.find(str[i]);
40+
if(item == visited.end()){
41+
visited.insert(str[i]);
42+
}else{
43+
hasvis = true;
44+
}
45+
getPath(inputs, k, tmpstr,visited, hasvis, result);
46+
if(item == visited.end()){
47+
item = visited.find(str[i]);
48+
visited.erase(item);
49+
}else{
50+
hasvis = false;
51+
}
52+
k--;
53+
tmpstr.pop_back();
54+
}
55+
}
56+
57+
int main(int argc, char const *argv[])
58+
{
59+
vector<string> inputs = getStrings();
60+
vector<string> result;
61+
int k = 0;
62+
string tmpstr;
63+
set<char> visited;
64+
bool hasvis = false;
65+
getPath(inputs, k, tmpstr, visited, hasvis, result);
66+
for(auto str : result){
67+
cout << str << endl;
68+
}
69+
return 0;
70+
}
71+
72+
//a bc df gh
73+
//a bc d eag f
74+
75+
76+
File renamed without changes.
File renamed without changes.

百度/readme.md

+14
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
**第一题:铺地毯**
2+
✅ 通过[代码链接](铺地毯.cpp)
3+
![](1.1.png)
4+
![](1.2.png)
5+
第二题:选角
6+
✅ 通过[代码链接](选角.cpp)
7+
![](2.1.png)
8+
![](2.2.png)
9+
![](2.3.png)
10+
**第三题:走台阶**
11+
❎ 未通过[代码链接](选角.cpp)
12+
![](3.1.png)
13+
![](3.2.png)
14+

百度/题目.md

-2
This file was deleted.

0 commit comments

Comments
 (0)