127 lines
2.7 KiB
C++
127 lines
2.7 KiB
C++
#include "qvectorhelper.h"
|
|
#include <qvector.h>
|
|
|
|
int QVectorHelper::minSec1;
|
|
int QVectorHelper::minSec2;
|
|
int QVectorHelper::minSec3;
|
|
int QVectorHelper::minTrackTime;
|
|
|
|
QVectorHelper::QVectorHelper() {
|
|
}
|
|
|
|
int QVectorHelper::getCurTime(const QVector<int> x) {
|
|
if (x.size() >= 3) {
|
|
return x.at(0) + x.at(1) + x.at(2);
|
|
}
|
|
else {
|
|
return 9999;
|
|
}
|
|
}
|
|
|
|
int QVectorHelper::getMinSec1(const QVector<QVector<int>> x) {
|
|
int min = 9999;
|
|
if (x.size() > 0) {
|
|
if (x.at(0).size() >= 3) {
|
|
if (x.at(0).at(0) >= minSec1) {
|
|
min = x.at(0).at(0);
|
|
}
|
|
}
|
|
else {
|
|
return 9999;
|
|
}
|
|
}
|
|
else {
|
|
return 9999;
|
|
}
|
|
|
|
for (int i = 1; i < x.size(); i++) {
|
|
if (x.at(i).size() >= 1) {
|
|
if (x.at(i).at(0) < min) {
|
|
if (x.at(i).at(0) >= minSec1) {
|
|
min = x.at(i).at(0);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
return min;
|
|
}
|
|
int QVectorHelper::getMinSec2(const QVector<QVector<int>> x) {
|
|
int min;
|
|
if (x.size() > 0) {
|
|
if (x.at(0).size() >= 3) {
|
|
if (x.at(0).at(1) >= minSec2) {
|
|
min = x.at(0).at(1);
|
|
}
|
|
}
|
|
else {
|
|
return 9999;
|
|
}
|
|
}
|
|
else {
|
|
return 9999;
|
|
}
|
|
|
|
for (int i = 1; i < x.size(); i++) {
|
|
if (x.at(0).size() >= 2) {
|
|
if (x.at(i).at(1) < min) {
|
|
if (x.at(0).at(1) >= minSec2) {
|
|
min = x.at(i).at(1);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
return min;
|
|
}
|
|
int QVectorHelper::getMinSec3(const QVector<QVector<int>> x) {
|
|
int min;
|
|
if (x.size() > 0) {
|
|
if (x.at(0).size() >= 3) {
|
|
if (x.at(0).at(2) >= minSec3) {
|
|
min = x.at(0).at(2);
|
|
}
|
|
}
|
|
else {
|
|
return 9999;
|
|
}
|
|
}
|
|
else {
|
|
return 9999;
|
|
}
|
|
|
|
for (int i = 1; i < x.size(); i++) {
|
|
if (x.at(i).size() >= 3) {
|
|
if (x.at(i).at(2) < min) {
|
|
if (x.at(0).at(2) >= minSec3) {
|
|
min = x.at(i).at(2);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
return min;
|
|
}
|
|
|
|
int QVectorHelper::getMin(const QVector<QVector<int>> x) {
|
|
int min;
|
|
if (x.size() > 0) {
|
|
if (x.at(0).size() >= 3) {
|
|
if (getCurTime(x.at(0)) >= minTrackTime) {
|
|
min = getCurTime(x.at(0));
|
|
}
|
|
}
|
|
else {
|
|
return 9999;
|
|
}
|
|
}
|
|
else {
|
|
return 9999;
|
|
}
|
|
for (int i = 1; i < x.size(); i++) {
|
|
if (getCurTime(x.at(i)) < min) {
|
|
if (getCurTime(x.at(0)) >= minTrackTime) {
|
|
min = getCurTime(x.at(i));
|
|
}
|
|
}
|
|
}
|
|
return min;
|
|
}
|