碎碎念
今天交作业,完成了50%,P1175,真气人
- P4387:AC
- P1739:未作(题目比较简单,自己可以做出来)
- P1449:AC
- P1175:30分
- 这道题思路没问题,码量比较大,测试了几组数据,都过了,应该还有没考虑到的分支,比较悲剧。
今天分享两道题的AC代码
题目:P1449 后缀表达式
题目原文请移步下面的链接
- https://www.luogu.com.cn/problem/P1449
- 参考题解:https://www.luogu.com.cn/problem/solution/P1449
- 标签:
OI
、模拟
、字符串
、数据结构
、栈
- 难度:
普及-
题解
思路
- 题目比较简单,题解闪过!
AC代码
代码语言:javascript复制#include <bits/stdc .h>
using namespace std;
#define endl 'n';
void best_coder() {
string s;
cin >> s;
vector<string> c(55);
int j = 0, t = 0, l = 0;
for (int i = 0; i < s.size() - 1; i) {
if (s[i] == '.') {
c[j] = s.substr(t, i - t);
t = i 1;
l;
j;
} else if (s[i] < '0' || s[i] > '9') {
c[j] = s[i];
j;
l;
t = i 1;
}
}
stack<int> ans;
ans.push(stoi(c[0]));
int i = 1;
for (; i < l; i) {
if (c[i] < "0" || c[i] > "9") {
int a = ans.top();
ans.pop();
int b = ans.top();
ans.pop();
if (c[i] == " ") {
ans.push(a b);
} else if (c[i] == "-") {
ans.push(b - a);
} else if (c[i] == "*") {
ans.push(a * b);
} else if (c[i] == "/") {
ans.push(b / a);
}
} else {
ans.push(stoi(c[i]));
}
}
cout << ans.top();
}
void happy_coder() {
}
int main() {
// // 提升cin、cout效率
// ios::sync_with_stdio(false);
// cin.tie(nullptr);
// cout.tie(nullptr);
// 小码匠
best_coder();
// 最优解
// happy_coder();
// 返回
return 0;
}
/**
* 8.3.2.6.* 5./-4. @
*/
题目:P4387 【深基15.习9】验证栈序列
题目原文请移步下面的链接
- https://www.luogu.com.cn/problem/P4387
- 参考题解:https://www.luogu.com.cn/problem/solution/P4387
- 标签:
OI
、模拟
、字符串
、数据结构
、栈
- 难度:
普及/提高-
题解
思路
- 题解继续闪过
AC代码
代码语言:javascript复制#include <bits/stdc .h>
using namespace std;
#define endl 'n';
void best_coder() {
int q;
cin >> q;
while (q--) {
int n;
cin >> n;
vector<int> a(n);
vector<int> b(n);
for (int i = 0; i < n; i) {
cin >> a[i];
}
for (int i = 0; i < n; i) {
cin >> b[i];
}
stack<int> s;
int j = 0;
for (int i = 0; i < n; i) {
s.push(a[i]);
while (!s.empty() && s.top() == b[j]) {
s.pop();
j;
}
}
if (s.empty()) {
cout << "Yes" << endl;
} else {
cout << "No" << endl;
}
}
}
void happy_coder() {
}
int main() {
// // 提升cin、cout效率
// ios::sync_with_stdio(false);
// cin.tie(nullptr);
// cout.tie(nullptr);
// 小码匠
best_coder();
// 最优解
// happy_coder();
// 返回
return 0;
}
END