Files
contests/advent_of_code/2022/6/main.cpp

39 lines
980 B
C++

#include <bits/stdc++.h>
using namespace std;
int main(){
ifstream input_file("input.txt");
string text;
input_file >> text;
deque<char> frame;
// Set up
for(int i = 0; i < 4; ++i){
frame.push_back(text[i]);
}
if(frame[0] != frame[1] && frame[0] != frame[2] && frame[0] != frame[3] &&
frame[1] != frame[2] && frame[1] != frame[3] && frame[2] != frame[3]){
cout << "Marker: " << frame[0] << frame[1] << frame[2] << frame[3] << endl;
return 0;
}
for(unsigned int i = 4; i < text.length(); ++i){
frame.pop_front();
frame.push_back(text[i]);
if(frame[0] != frame[1] && frame[0] != frame[2] && frame[0] != frame[3] &&
frame[1] != frame[2] && frame[1] != frame[3] && frame[2] != frame[3]){
// cout << "Marker: " << frame[0] << frame[1] << frame[2] << frame[3] << endl;
cout << i + 1 << endl;
return 0;
}
}
return 0;
}