Submission
Status:
-PPPPP-PP-
Score: 70
User: kaka
Problemset: Maximum Adjacent
Language: cpp
Time: 0.002 second
Submitted On: 2025-03-25 08:51:55
#include <bits/stdc++.h>
using namespace std;
bool mx(int a, int b, int c){
int res = max(a,b);
res = max(res,c);
if(res == b){
return true;
}
return false;
}
int main()
{
string s;
getline(cin, s);
for(auto &c : s){
if(isalpha(c)){
c = ' ';
}
}
stringstream iss(s);
int temp;
vector<int> nums;
while(iss >> temp){
nums.push_back(temp);
}
if(nums.size()% 3 == 1){
vector<int> pro;
pro.push_back(0);
pro.insert(pro.end(), nums.begin(), nums.end());
pro.push_back(0);
for(int i = 1; i < pro.size(); i++){
if(mx(pro[i - 1], pro[i], pro[i + 1])){
cout << pro[i] << ' ';
}
}
return 0;
}
else if(nums.size()% 3 == 2){
nums.push_back(0);
}
for(int i = 1; i < nums.size(); i++){
if(mx(nums[i - 1], nums[i], nums[i + 1])){
cout << nums[i] << ' ';
}
}
}