美文网首页
codeforces 681 A

codeforces 681 A

作者: ChenKL | 来源:发表于2018-05-20 22:02 被阅读0次
    A Good Contest CodeForces

    简单题

    判断大于2400 并且num1 < num2

    #include <iostream>
    using namespace std;
    int main()
    {
        ios::sync_with_stdio(false);
        int N;
        string con;
        int num1,num2;
        bool yes = false;
        cin >> N;
        for (int i = 0;i < N;i++)
        {
            cin >> con >> num1 >> num2;
           if (num1 >= 2400 && num1 < num2){
                yes = true;
            }
        }
        if (yes) {
            cout << "YES" << endl;
        } else {
            cout << "NO" << endl;
        }
        return 0;
    }
    

    B - Economy Game CodeForces

    暴力枚举

    #include <bits/stdc++.h>
    
    using namespace std;
    int coins[3] = {1234567,123456,1234};
    int main()
    {
        int num;
        cin >> num;
        for (int i = num / coins[1];i >= 0;i--)
        {
            int num1 = num - i * coins[0];
            for (int j = num1 / coins[1];j >= 0 ;j--)
            {
                int num2 = num1 - j * coins[1];
                if (num2 % coins[2] == 0)
                {
                    cout << "YES" << endl;
                    return 0;
                }
            }
        }
        cout << "No" << endl;
        return 0;
    }
    
    

    Heap Operations CodeForces

    记录堆操作

    坑点在于注意队列为空时的弹出 因此w了好几次

    #include <bits/stdc++.h>
    
    using namespace std;
    const int MAX_N = 1e6 + 100;
    string oper[MAX_N];
    int nums[MAX_N];
    int main()
    {
      ios::sync_with_stdio ( false );
      priority_queue<int, vector<int>, greater<int> > que;
      int cnt = 0;
      int N;
      cin >> N;
      for ( int i = 0; i < N; i++ ) {
        string op;
        int num;
        cin >> op ;
        if ( op == "insert" ) {
          cin >> num;
          oper[cnt] = op;
          nums[cnt++] = num;
          que.push ( num );
        } else if ( op == "removeMin" ) {
          if ( !que.size() ) {
            oper[cnt] = "insert";
            nums[cnt++] = 0;
            oper[cnt] = op;
            nums[cnt++] = -1;
          } else {
            num = que.top();
            while ( que.size() && que.top() == num ) {
              oper[cnt] = op;
              nums[cnt++] = -1;
              que.pop();
            }
          }
    
        } else if ( op == "getMin" ) {
          cin >> num;
          while ( que.size() && que.top() < num ) {
            oper[cnt] = "removeMin";
            nums[cnt++] = -1;
            que.pop();
          }
          if ( !que.size() || que.top() != num ) {
            que.push ( num );
            oper[cnt] = "insert";
            nums[cnt++] = num;
          }
          oper[cnt] = "getMin";
          nums[cnt++] = num;
    
        }
      }
      cout << cnt << endl;
      for ( int i = 0; i < cnt; i++ ) {
        cout << oper[i];
        if ( oper[i] == "removeMin" ) {
          cout << endl;
        } else {
          cout << " " << nums[i] << endl;
        }
      }
      return 0;
    }
    
    
    
    

    相关文章

      网友评论

          本文标题:codeforces 681 A

          本文链接:https://www.haomeiwen.com/subject/xycxjftx.html