欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

厦门理工学院oj 1234 -- 恐怖的奴隶主

程序员文章站 2022-06-01 17:13:41
...

完全按照题目模拟,cnt标记应该生成多少个奴隶主,接着往vector中插入新奴隶主,最后删除掉容器内血量为0的元素

#include <cstring>
#include <iostream>
#include <algorithm>
#include <cstdio>
#include <vector>

using namespace std;

int n, k;
vector<int> q;

int main()
{
    cin >> n >> k;
    for(int i = 0; i < n; i++)
    {
        int t;
        cin >> t;
        q.push_back(t);
    }
    while(k--)
    {
        int cnt = q.size(), size = q.size();
        for(vector<int>::iterator t = q.begin(); t != q.end(); t++)
        {
            (*t)--;
            if(*t == 0) cnt--;
        }
        for(int i = 1; i <= cnt && i + size <= 7; i++)
        {
            q.push_back(3);
        }
        for(vector<int>::iterator t = q.begin(); t != q.end(); )
        {
            if(*t == 0) t = q.erase(t);
            else t++;
        }
    }
    cout << q.size();
    return 0;
}
相关标签: 厦门理工学院