212 words
1 minutes
[BOJ] So☆Lucky
| TimeLimit | MemoryLimit | Condition | TAG | 
|---|---|---|---|
| 1s | 1024MB | (0 ≤ N ≤ 200’000, 1 ≤ A_i ≤ 10^9) | Implementation, Math | 
그냥 간단하게 정렬할면 한쪽으로 밀어버리면 된다. 라는 아이디어로 구현하면 됩니다.
쉽게 풀이가 가능합니다.
정답 코드
#include <iostream>
#include <queue>
#include <set>
#include <algorithm>
#include <random>
#include <iostream>
#include <vector>
#include <algorithm>
#include <map>
#define MOD 1000000007LL
#define MAX 1'000'000LL
using namespace std;
using ll = long long;
//double A, B;
ll nums[200'001];
int main() {
    ll n;
    cin >> n;
    
    for(int i = 0; i < n; i++) cin >> nums[i];
    
    // first method
    bool check = false;
    ll back = nums[0];
    for(int i = 1; i < n; i++){
        if(nums[i] >= back){
            back = nums[i];
        }else{
            if(!((nums[i]+back) % 2)){
                check = true;
                break;
            }
        }
        
    }
    
    if(check) cout << "Unlucky";
    else cout << "So Lucky";
    cout << "\n";
    // second method
    check = false;
    back = nums[0];
    for(int i = 1; i < n; i++){
        if(nums[i] >= back){
            back = nums[i];
        }else{
            if(((nums[i]+back) % 2)){
                check = true;
                break;
            }
        }
        
    }
    
    if(check) cout << "Unlucky";
    else cout << "So Lucky";
    
    return 0;
}[BOJ] So☆Lucky
https://compy07.github.io/Blog/posts/boj/34030/
