• 【牛客】牛客练习赛15(erase())


    牛客练习赛15

    吉姆的运算式

    题意:输入进去的最后一组数。

    思路:水。

    #include<bits/stdc++.h>
    using namespace std;
    int main()
    {
        int i,f1,f2;
        string a;
        cin>>a;
        f1=0;f2=0;
        for(i=0;i<a.length();i++)
        {
            if(a[i]==',')
                f1=i;
            if(a[i]=='(')
                f2=i;
        }
        i=max(f1,f2);
        for(;i<a.length();i++)
        {
            if(a[i]==','||a[i]=='(')
                continue;
            if(a[i]==')')
                break;
            else
                cout<<a[i];
        }
        cout<<endl;
        return 0;
    }

    B-沃老师学生的成绩

    https://www.nowcoder.com/acm/contest/83/B

    题意:比较字符串大小,相同的话按名字字典序输出

    思路:用erase删除数组元素。

    临时变量作为引用参数传递时,必须是常量引用。所以在cmp函数里加入const 再加参数。

    临时变量不能作为非const引用参数,不是因为他是常量,而是因为c++编译器的一个关于语义的限制。如果一个参数是以非const引用传入,c++编译器就有理由认为程序员会在函数中修改这个值,并且这个被修改的引用在函数返回后要发挥作用。但如果你把一个临时变量当作非const引用参数传进来,由于临时变量的特殊性,程序员并不能操作临时变量,而且临时变量随时可能被释放掉,所以,一般说来,修改一个临时变量是毫无意义的,据此,c++编译器加入了临时变量不能作为非const引用的这个语义限制,意在限制这个非常规用法的潜在错误。

    #include<bits/stdc++.h>
    using namespace std;
    typedef long long ll;
    const int inf = 0x3f3f3f3f;
    const int SIZE = 1e6 + 10;
    struct grade
    {
        string name;
        string score, sscore;
    } a[SIZE];
    
    bool cmp(const grade &x,const grade &y)
    {
        if(x.sscore != y.sscore) return x.sscore > y.sscore;
        return x.name < y.name;
    }
    int main()
    {
        int n;
        while(cin >> n)
        {
            for(int i = 0; i < n; i++)
            {
                cin >> a[i].name >> a[i].score;
                a[i].sscore = a[i].score;
                int j = a[i].sscore.length() - 1;
                while(a[i].sscore[j] == '0')
                {
                    a[i].sscore.erase(j);
                    j--;
                }
            }
            sort(a, a + n, cmp);
    
            for(int i = 0; i < n; i++)
            {
                cout << a[i].name << " " << a[i].score << endl;
            }
        }
        return 0;
    }
  • 相关阅读:
    Fluent API
    什么是blazor
    10.事务
    9.用ExecuteSqlCommand执行存储过程
    8.自增主键 插入指定主键的数据
    7.图
    6.实体与上下文的关系
    5.并发
    4.跟踪
    3.级联删除
  • 原文地址:https://www.cnblogs.com/Kohinur/p/8832527.html
Copyright © 2020-2023  润新知