Codeforces 814 A An abandoned sentiment from past

xiaoxiao2021-02-28  95

题目地址:http://codeforces.com/contest/814/problem/A 题意:其实就是让你用第二个序列的数去替换第一个序列为0的数,如果最后生成的序列一定是升序序列输出NO,否则输出YES。 思路:其实特别简单,因为题意中说明了两个序列没有重复的数,如果可填充的数有两个及以上,就一定会有大小关系,所以说一定可以让他成为非升序序列,如果只有一个可填充的数的话,把他换进第一个序列里,看第一个序列是不是升序就好了。

#include <iostream> #include <cstring> #include <string> #include <queue> #include <vector> #include <map> #include <algorithm> #define N 110 #define LL long long #define inf 0x3f3f3f3f using namespace std; int main() { cin.sync_with_stdio(false); int n, m, num[N], flag; while (cin >> n >> m) { for (int i = 0; i < n; i++) { cin >> num[i]; } for (int i = 0; i < m; i++) { cin >> flag; } if (m <= 1) { for (int i = 0; i < n; i++) { if (num[i] == 0) { num[i] = flag; } } flag = 1; for (int i = 1; i < n; i++) { if (num[i] < num[i - 1]) { flag = 0; break; } } if (flag) { cout << "NO" << endl; } else { cout << "YES" << endl; } } else { cout << "YES" << endl; } } return 0; }
转载请注明原文地址: https://www.6miu.com/read-64749.html

最新回复(0)