Compare commits
2 commits
d24974703f
...
2a57da02a9
| Author | SHA1 | Date | |
|---|---|---|---|
| 2a57da02a9 | |||
| 04d7f1305c |
6 changed files with 16 additions and 7 deletions
|
|
@ -32,7 +32,6 @@ int main(){
|
|||
}
|
||||
|
||||
list<int> currentLevelsBackup = currentLevels;
|
||||
int numOfLevelsInLine = currentLevels.size();
|
||||
int numOfLevelsProcessed = 0;
|
||||
auto curListIt = currentLevels.begin();
|
||||
curListIt++; //point to second item in list
|
||||
|
|
@ -68,7 +67,6 @@ int main(){
|
|||
levelStaysSame.push_front(index);
|
||||
}
|
||||
}
|
||||
float averageChange = totalChange/(currentLevels.size()-1); //we use average change to smooth out the data
|
||||
|
||||
if (totalChange>0){
|
||||
dir= UP;
|
||||
|
|
@ -76,12 +74,23 @@ int main(){
|
|||
dir = DOWN;
|
||||
}
|
||||
|
||||
if (dir==UP&&levelGoDown.size()>2){ //if the overall direction goes up and more then 2 leves go down the list is bad
|
||||
if (dir==UP&&levelGoDown.size()>1){ //if the overall direction goes up and more then 1 level go down the list is bad
|
||||
currentLevels.clear();
|
||||
} else if (dir==DOWN&&levelGoesUp.size()>2){ //same as above but opiosite dirrection
|
||||
} else if (dir==DOWN&&levelGoesUp.size()>1){ //same as above but opiosite dirrection
|
||||
currentLevels.clear();
|
||||
}
|
||||
|
||||
if (levelStaysSame.size()>1){ //cant have more then 1 number the same or the list is bad
|
||||
currentLevels.clear();
|
||||
}
|
||||
|
||||
if (!currentLevels.empty()&&levelStaysSame.size()==1){
|
||||
auto itNumberToDelete = currentLevels.begin();
|
||||
advance(itNumberToDelete,levelStaysSame.front());
|
||||
currentLevels.erase(itNumberToDelete);
|
||||
listDirty = true;
|
||||
}
|
||||
|
||||
if (!currentLevels.empty()){
|
||||
if (dir==UP&&levelGoDown.size()==1){
|
||||
list<int>::iterator itNumberToDelete = currentLevels.begin();
|
||||
|
|
@ -95,15 +104,15 @@ int main(){
|
|||
listDirty=true;
|
||||
}
|
||||
|
||||
int numOfLevelsInLine = currentLevels.size();
|
||||
|
||||
//need to pull the first one to have something to compare to
|
||||
int prevlevel = currentLevels.front();
|
||||
currentLevels.pop_front();
|
||||
numOfLevelsProcessed++;
|
||||
|
||||
for (int level = currentLevels.front(); !currentLevels.empty();level=currentLevels.front()){
|
||||
if (abs(prevlevel-level)>3) {currentLevels.clear();break;}
|
||||
if(prevlevel==level){ currentLevels.clear();break;}
|
||||
if(dir==UP&&(prevlevel<currentLevels.front())) {currentLevels.clear();break;}
|
||||
if(dir==DOWN&&(prevlevel>currentLevels.front())) {currentLevels.clear();break;}
|
||||
|
||||
prevlevel=currentLevels.front();
|
||||
currentLevels.pop_front();
|
||||
|
|
|
|||
BIN
2/puzzle2p2.exe
BIN
2/puzzle2p2.exe
Binary file not shown.
BIN
2/puzzle2p2.ilk
BIN
2/puzzle2p2.ilk
Binary file not shown.
BIN
2/puzzle2p2.obj
BIN
2/puzzle2p2.obj
Binary file not shown.
BIN
2/puzzle2p2.pdb
BIN
2/puzzle2p2.pdb
Binary file not shown.
BIN
2/vc140.pdb
BIN
2/vc140.pdb
Binary file not shown.
Loading…
Add table
Add a link
Reference in a new issue