比赛 |
Asm.Def战记之圣地亚哥“杯2015 |
评测结果 |
WWWWWWWWWW |
题目名称 |
Asm.Def的枪榴弹 |
最终得分 |
0 |
用户昵称 |
KZNS |
运行时间 |
0.016 s |
代码语言 |
C++ |
内存使用 |
0.31 MiB |
提交时间 |
2015-10-31 11:31:11 |
显示代码纯文本
// KZ's
#include <fstream>
using namespace std;
class rb {
public:
int A,T;
int nb() {
return A+T;
}
};
class boo {
public:
int A,T,E;
int nb() {
return A+T+E;
}
}WS;
bool operator <= (rb a,boo b) {
if (a.A<=b.A&&a.T<=b.T)
return 1;
int u=0;
if (a.A>b.A)
u+=a.A-b.A;
if (a.T>b.T)
u+=a.T-b.T;
return u<=b.E;
}
boo operator - (boo a,rb b) {
boo u;
u.A=a.A-b.A;
u.T=a.T-b.T;
u.E=a.E;
if (u.A<0) {
u.E+=u.A;
u.A=0;
}
if (u.T<0) {
u.E+=u.T;
u.T=0;
}
return u;
}
boo operator + (boo a,boo b) {
boo u;
u.A=a.A+b.A;
u.T=a.T+b.T;
u.E=a.E+b.T;
return u;
}
class room {
public:
rb D;
boo B;
}R[16];
int main() {
ifstream fin ("asm_grenade.in");
ofstream fout ("asm_grenade.out");
int n;
bool f[16]={0};
for (int i=0;i<n;i++)
fin>>R[i].D.A;
for (int i=0;i<n;i++)
fin>>R[i].D.T;
for (int i=0;i<n;i++)
fin>>R[i].B.A;
for (int i=0;i<n;i++)
fin>>R[i].B.T;
for (int i=0;i<n;i++)
fin>>R[i].B.E;
fin>>WS.A>>WS.T>>WS.E;
bool fff=1;
while(fff) {
fff=0;
for (int i=0;i<n;i++){
if(!f[i]&&R[i].D<=WS&&R[i].D.nb()<=R[i].B.nb()) {
WS=(WS-R[i].D)+R[i].B;
fff=1;
f[i]=true;
}
}
}
fout<<WS.nb()<<endl;
return 0;
}
// UBWH