Codeforces 814A 暴力

传送门:题目

题意:

给两个序列a和b,然后a中有k个0,b的长度正好是kb中的任意数字可以填到a中为0的任意位置,b中的每一个数字能且只能使用一次,问能不能找到一种情况,使a变成递增序列。

题解:

暴力就好,我们只需要让b序列以递减的顺序插入到a序列,然后看看a是不是递增就好。

#include <iostream>
#include <algorithm>
using namespace std;
const int maxn=210;

int a[maxn],b[maxn];
int main(void){
    int n,k;
    cin>>n>>k;
    for(int i=0;i<n;i++)
        cin>>a[i];
    for(int i=0;i<k;i++)
        cin>>b[i];

    sort(b,b+k);
    for(int i=0;i<n;i++)
        if(a[i]==0)
            k--,a[i]=b[k];
    cout<<(is_sorted(a,a+n)?"No":"Yes")<<endl;//is_sort()是algorithm的一个函数,可以判断该序列是否递增和递减,很方便。
    return 0;
}

猜你喜欢

转载自blog.csdn.net/shadandeajian/article/details/81667699