题解
2025-07-11 18:16:36
发布于:江苏
#include <bits/stdc++.h>
using namespace std;
int convert(int num) {
if (num == 1) return 14;
if (num == 2) return 15;
if (num == 14) return 16;
if (num == 15) return 17;
return num;
}
int main() {
vector<int> cards;
for (int i = 0; i < 17; ++i) {
int num;
cin >> num;
cards.push_back(convert(num));
}
vector<int> new_cards(3);
for (int i = 0; i < 3; ++i) {
cin >> new_cards[i];
new_cards[i] = convert(new_cards[i]);
}
int total = 0;
for (int i = 0; i < 3; i) {
int new_card = new_cards[i];
int pos = cards.size();
int cnt = 0;
bool found = false;
for (int j = cards.size() - 1; j >= 0; --j) {
cnt;
if (cards[j] <= new_card) {
pos = j + 1;
found = true;
break;
}
}
if (!found) {
pos = 0;
}
cards.insert(cards.begin() + pos, new_card);
total += cnt;
}
cout << total << endl;
return 0;
}
这里空空如也
有帮助,赞一个