jopi
Попрошайка
- 1,421
- 30
- 260
У меня есть такой прикол
Мне нужно на выходе получить
я попробовал, и обосрался
Что можете подсказать господа?
при этом если сделать так:
Должно выйти
int damage = 5000;
int[] armors = {2000, 6000, 1000, 0};
Мне нужно на выходе получить
int damage = 0;
int[] armors = {0, 4000, 0, 0};
я попробовал, и обосрался
Java:
while(true) {
boolean var1 = true;
for (int i = 0; i != 4; i++) {
if (armors[i] != 0) {
var1 = false;
}
}
if (var1) break;
if (damage == 0) break;
int var2 = 0;
int[] var3 = {0, 0, 0, 0};
for (int i = 0; i != 4; i++) {
if (armors[i] != 0) {
var2++;
var3[i] = 1;
}
}
int var4DamageLimited = damage / var2;
int var5Copy = damage;
int var6 = 0;
for (int i = 0; i != 4; i++) {
if (var3[i] != 0) {
if (armors[i] >= var4DamageLimited) {
armors[i] -= var4DamageLimited;
var5Copy -= var4DamageLimited;
} else if (armors[i] < var4DamageLimited) {
var6 = var4DamageLimited - armors[i];
armors[i] = 0;
var5Copy -= var6;
}
}
}
damage -= var5Copy;
}
при этом если сделать так:
int damage = 3500;
int[] armors = {2000, 6000, 1000, 0};
Должно выйти
int damage = 0;
int[] armors = {750, 4750, 0, 0};