全部评论
***空格,一开始都没注意到
同没看到空格,等发现的时候就觉得凉了
第二题答案可参考https://blog.csdn.net/weixin_39843989/article/details/100108221
第二题是codeforce 425c原题
第二题我题都没看懂,完全不理解那个cost代价是多少
这题我觉得可以用两个队列写,可惜时间不够了
第二题我用dp写的,45%🤣
对啊第一题我写完调试发现空格???真的太醉了 气人 最后没时间
空格真的有毒
没有去过,不知道哦
分享一个网上找到的第一题的代码 #include<iostream>
#include<vector>
using namespace std;
bool check(char a, char b, char c) {
if (b == '+' && a == '+' && c != '*' && c != '/') return true;
if (b == '-' && a == '-' && c != '*' && c != '/') return true;
if (b == '*' && (a == '+' or a == '-')) return true;
if (b == '/' && a == '/') return true;
return false;
}
int main() {
int n; cin >> n;
vector<int> num(n); vector<char> op(n+1,'+');
for (int i = 0; i < n-1; i++) {
cin >> num[i];
cin >> op[i+1];
}
cin >> num[n - 1];
for (int i = 0; i < n-1; i++) {
for (int j = 0; j < n-i-1; j++) {
if (num[j]>num[j+1]&&check(op[j],op[j+1],op[j+2])) {
num[j] = num[j] ^ num[j + 1];
num[j + 1] = num[j] ^ num[j + 1];
num[j] = num[j] ^ num[j + 1];
}
}
}
for (int i = 0; i < n; i++) {
cout << num[i] << " ";
if (i < n - 1) cout << op[i + 1] << " ";
}
cout << endl;
system("pause");
return 0;
}
相关推荐
点赞 评论 收藏
分享