第三题 #include<bits/stdc++.h> using namespace std; int main() { int n; cin >> n; vector<int>a; vector<int>b; for (int i = 0; i < n; i++) { int temp; cin >> temp; a.push_back(temp); } for (int i = 0; i < n; i++) { int temp; cin >> temp; b.push_back(temp); } int count = 0; bool isChanged = false; bool isRight = true; while (true) { isChanged = false; isRight = true; for (int i = 0; i < n - 1; i++) { if (a[i] > a[i + 1]) { isRight = false; if (b[i + 1] <= b[i]) { count++; isChanged = true; int temp = a[i]; a[i] = b[i + 1]; b[i + 1] = temp; temp = a[i + 1]; a[i + 1] = b[i]; b[i] = temp; } } } if (!isRight && !isChanged) { cout << -1 << endl; return 0; } else if (isRight) { break; } } cout << count << endl; return 0; }
点赞 评论

相关推荐

04-15 23:42
中山大学 Java
ResourceUtilization:过几天楼主就会捧着一堆offer来问牛友们该怎么选辣
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务