zoukankan      html  css  js  c++  java
  • Gym 100801E Easy Arithmetic (思维题)

    题目:传送门。(需要下载PDF)

    题意:给定一个长度不超过1000的字符串表达式,向该表达式中加入'+'或'-',使得表达式的值最大,输出该表达式。

    题解:比如300-456就改成300-4+56,遇到二位数以上的减数的情况就变成-首位+剩下的,这样会使得表达式值最大。

    #include <iostream>
    #include <cstdio>
    #include <cmath>
    #include <cstring>
    using namespace std;
    string c;
    int main()
    {
        freopen("easy.in","r",stdin);
        freopen("easy.out","w",stdout);
        cin>>c;
        int len=c.length();
        bool flag=0;
        for(int i=0;i<len;i++)
        {
            if(c[i]=='-'||c[i]=='+') flag=0;
            if(flag) putchar('+');
            if(c[i]!='0') flag=0;
            if(c[i-1]=='-'&&i>=1) flag=1;
            putchar(c[i]);
        }
        puts("");
        return 0;
    }
  • 相关阅读:
    AE旋转
    AE2
    AE1
    面试
    TS 基础数据类型
    vue-cli结构介绍
    js异步加载的5种方式
    slot 插槽的使用
    使用组件的细节点
    Vue 条件渲染
  • 原文地址:https://www.cnblogs.com/Ritchie/p/5749075.html
Copyright © 2011-2022 走看看