TopCoder - SRM 421 DIV 2: 250
public class GymTraining {
public int trainingTime(int needToTrain, int minPulse, int maxPulse, int trainChange, int restChange) {
if (minPulse < 50 || minPulse > 200) {
return -1;
}
if (maxPulse < minPulse || maxPulse > 200) {
return -1;
}
if (needToTrain < 1 || needToTrain > 200) {
return -1;
}
if (needToTrain < 1 || needToTrain > 200) {
return -1;
}
if (trainChange < 1 || trainChange > 200) {
return -1;
}
if (restChange < 1 || restChange > 200) {
return -1;
}
int time;
int trained = 0;
int pulse = minPulse;
if(maxPulse < minPulse + trainChange) {
return -1;
}
for(time=0; trained < needToTrain; time++) {
if(maxPulse >= pulse + trainChange) {
pulse += trainChange;
trained++;
} else {
pulse -= restChange;
}
if(pulse < minPulse) pulse = minPulse;
}
return time;
}
}
250点問題の練習をしてみた。180点しかとれなかった。超凡ミス。メソッドをpublicにしてなかったのと、セミコロンをつけ忘れてたとこがあったorz。コンパイルエラー2回。あと、他の人のコードを見たら、糞短いwww。英語力も足りない。問題を理解するのに時間がかかりすぎ。いろいろと課題が山積み。
コメント
コメントを投稿