Optomized solutions for Day1
This commit is contained in:
19
Day1-2.cpp
19
Day1-2.cpp
@@ -7,6 +7,7 @@
|
||||
|
||||
#include <iostream>
|
||||
#include <vector>
|
||||
#include <algorithm>
|
||||
#include "Stopwatch.hpp"
|
||||
|
||||
|
||||
@@ -33,16 +34,22 @@ int main(){
|
||||
//Start the timer
|
||||
timer.start();
|
||||
|
||||
std::sort(numbersList.begin(), numbersList.end());
|
||||
|
||||
//Find the two numbers in the array that make the correct sum
|
||||
for(int cnt1 = 0;(cnt1 < numbersList.size()) && (!found);++cnt1){
|
||||
for(int cnt2 = cnt1 + 1;(cnt2 < numbersList.size()) && (!found);++cnt2){
|
||||
for(int cnt3 = cnt2 + 1;(cnt3 < numbersList.size()) && (!found);++cnt3){
|
||||
if((numbersList[cnt1] + numbersList[cnt2] + numbersList[cnt3]) == NEEDED_SUM){
|
||||
firstNum = numbersList[cnt1];
|
||||
secondNum = numbersList[cnt2];
|
||||
thirdNum = numbersList[cnt3];
|
||||
found = true;
|
||||
}
|
||||
int sum = numbersList[cnt1] + numbersList[cnt2] + numbersList[cnt3];
|
||||
if(sum > NEEDED_SUM){
|
||||
break;
|
||||
}
|
||||
else if(sum == NEEDED_SUM){
|
||||
firstNum = numbersList[cnt1];
|
||||
secondNum = numbersList[cnt2];
|
||||
thirdNum = numbersList[cnt3];
|
||||
found = true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user