厦门理工学院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;
}