zoukankan      html  css  js  c++  java
  • 【贪心】umi的函数

    原题传送门

    思路


    这道题乍一看很难,然而实际在草纸上一模拟,结果就出来了。

    分析:这道题实际上要么无解,要么有无数个解,因而题目只要求输出了一个解(明白这点题目就做出来一半了)。

    题中,规定所求z满足:y[i]=max(x{i],z[i])。
    因而,若x[i]>y[i],无论z[i]为何值max(x{i],z[i])的值都为x[i],而他的值又等于y[i],所以x[i]=y[i],可是之前规定了x[i]>y[i],故矛盾,因而若x[i]>y[i],变无解,输出-1。
    若x[i]≤[i],则只要z[i]等于y[i],max(x{i],z[i])的值就为y[i]。
    所以,因为除了无解,就是有解,因而若有x[i]>y[i],则无解,输出-1,否则的话,zi一定都等于yi,那么y就等于z,即直接输出y即可(这道题因而连z这个字符串都不用创建,因为分析到这便和z没关系了。

    注意:原题规定a>b,但在ASCII码中,a<b,因而交由计算机实现时,要把x[i]>y[i]变为x[i]<y[i],下面是代码。

    Code


    #include <iostream>
    #include <string>
    using namespace std;
    
    int main()
    {
        int n;
        cin>>n;
        string x,y;
        cin>>x>>y;
        
        for(int i=0;i<n;i++)
            if(x[i]<y[i])
            {
                cout<<"-1";
                return 0;
            }
        cout<<y;
        
         return 0;
    }
    
  • 相关阅读:
    惊讶
    BLOG休假
    因考试得福
    Shape of My HeartSting !
    一个月的第一天了
    BLOG开张喽~~~
    该走了
    脏话
    EditText的属性
    游戏引擎
  • 原文地址:https://www.cnblogs.com/gongdakai/p/11066276.html
Copyright © 2011-2022 走看看