답안 #262351

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
262351 2020-08-12T16:50:34 Z stoyan_malinin Detecting Molecules (IOI16_molecules) C++14
100 / 100
79 ms 6252 KB
#include "molecules.h"
//#include "grader.cpp"

#include <bitset>
#include <time.h>
#include <random>
#include <cstring>
#include <algorithm>

using namespace std;

const int MAXN = 5e5 + 5;
mt19937 rnd(22);

int dp[MAXN];

void filterVector(vector <int> &v, int lim)
{
    vector <int> newVal;
    for(int x: v)
    {
        if(x<=lim) newVal.push_back(x);
    }

    v = newVal;
}

vector <int> recoverAnswer(int x, vector <int> &w)
{
    vector <int> answer;

    while(x!=0)
    {
        answer.push_back(dp[x]);
        x = x - w[ dp[x] ];
    }

    return answer;
}

vector <int> solveSingle(int l, int u, vector <int> &w)
{
    for(int i = 0;i<w.size();i++)
    {
        if(w[i]>=l && w[i]<=u) return vector <int> {i};
    }

    return vector <int> {};
}

vector <int> solveDouble(int l, int u, vector <int> w)
{
    sort(w.begin(), w.end());
    for(int i = 0;i<w.size()-1;i++)
    {
        if(w[i]+w[i+1]>u) break;
        if(w[i]+w.back()<l) continue;

        int low = i + 1, high = w.size() - 1, mid;
        while(low+1<high)
        {
            mid = (low+high)/2;

            if(w[i]+w[mid]>=l) high = mid;
            else low = mid + 1;
        }

        if(low<w.size() && w[i]+w[low]>=l && w[i]+w[low]<=u) return vector <int> {i, low};
        if(high<w.size() && w[i]+w[high]>=l && w[i]+w[high]<=u) return vector <int> {i, high};
    }

    return vector <int> {};
}

vector <int> specialCaseSolutions(int l, int u, vector <int> &w)
{
    vector <int> answer = {};

    answer = solveSingle(l, u, w);
    if(answer.empty()==false) return answer;

    answer = solveDouble(l, u, w);
    if(answer.empty()==false) return answer;

    return vector <int> {};
}

vector<int> find_subset(int l, int u, vector <int> w)
{
    for(int i = 0;i<w.size();i++)
    {
        if(w[i]>=l && w[i]<=u) return vector <int> {i};
    }

    vector <pair <int, int>> v;
    for(int i = 0;i<w.size();i++) v.push_back({w[i], i});
    sort(v.begin(), v.end());

    int ind = 0;
    long long sum = v[0].first;

    for(int i = 1;i<v.size();i++)
    {
        if(v[i].first>u)  break;

        sum += v[i].first;
        while(sum>u) sum -= v[ind].first, ind++;

        if(sum>=l && sum<=u)
        {
            vector <int> answer;
            for(int j = ind;j<=i;j++) answer.push_back(v[j].second);

            return answer;
        }
    }

    return vector <int> {};
}

Compilation message

molecules.cpp: In function 'std::vector<int> solveSingle(int, int, std::vector<int>&)':
molecules.cpp:43:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   43 |     for(int i = 0;i<w.size();i++)
      |                   ~^~~~~~~~~
molecules.cpp: In function 'std::vector<int> solveDouble(int, int, std::vector<int>)':
molecules.cpp:54:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   54 |     for(int i = 0;i<w.size()-1;i++)
      |                   ~^~~~~~~~~~~
molecules.cpp:68:15: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   68 |         if(low<w.size() && w[i]+w[low]>=l && w[i]+w[low]<=u) return vector <int> {i, low};
      |            ~~~^~~~~~~~~
molecules.cpp:69:16: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   69 |         if(high<w.size() && w[i]+w[high]>=l && w[i]+w[high]<=u) return vector <int> {i, high};
      |            ~~~~^~~~~~~~~
molecules.cpp: In function 'std::vector<int> find_subset(int, int, std::vector<int>)':
molecules.cpp:90:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   90 |     for(int i = 0;i<w.size();i++)
      |                   ~^~~~~~~~~
molecules.cpp:96:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   96 |     for(int i = 0;i<w.size();i++) v.push_back({w[i], i});
      |                   ~^~~~~~~~~
molecules.cpp:102:20: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<std::pair<int, int> >::size_type' {aka 'long unsigned int'} [-Wsign-compare]
  102 |     for(int i = 1;i<v.size();i++)
      |                   ~^~~~~~~~~
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 256 KB OK (n = 1, answer = NO)
2 Correct 0 ms 256 KB OK (n = 1, answer = NO)
3 Correct 0 ms 256 KB OK (n = 1, answer = YES)
4 Correct 0 ms 256 KB OK (n = 2, answer = YES)
5 Correct 0 ms 256 KB OK (n = 2, answer = YES)
6 Correct 0 ms 256 KB OK (n = 3, answer = YES)
7 Correct 0 ms 256 KB OK (n = 3, answer = YES)
8 Correct 1 ms 256 KB OK (n = 3, answer = YES)
9 Correct 0 ms 256 KB OK (n = 3, answer = YES)
10 Correct 0 ms 256 KB OK (n = 3, answer = YES)
11 Correct 0 ms 256 KB OK (n = 3, answer = YES)
12 Correct 0 ms 256 KB OK (n = 3, answer = YES)
13 Correct 0 ms 256 KB OK (n = 3, answer = NO)
14 Correct 0 ms 256 KB OK (n = 3, answer = YES)
15 Correct 0 ms 256 KB OK (n = 3, answer = YES)
16 Correct 1 ms 256 KB OK (n = 3, answer = NO)
17 Correct 0 ms 256 KB OK (n = 3, answer = NO)
18 Correct 0 ms 256 KB OK (n = 100, answer = NO)
19 Correct 0 ms 256 KB OK (n = 100, answer = YES)
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 256 KB OK (n = 12, answer = YES)
2 Correct 0 ms 256 KB OK (n = 12, answer = YES)
3 Correct 0 ms 256 KB OK (n = 12, answer = NO)
4 Correct 0 ms 256 KB OK (n = 12, answer = NO)
5 Correct 0 ms 256 KB OK (n = 12, answer = YES)
6 Correct 0 ms 256 KB OK (n = 12, answer = YES)
7 Correct 0 ms 256 KB OK (n = 12, answer = YES)
8 Correct 0 ms 256 KB OK (n = 12, answer = YES)
9 Correct 0 ms 256 KB OK (n = 6, answer = YES)
10 Correct 0 ms 256 KB OK (n = 12, answer = YES)
11 Correct 0 ms 256 KB OK (n = 100, answer = NO)
12 Correct 0 ms 256 KB OK (n = 100, answer = YES)
13 Correct 0 ms 256 KB OK (n = 100, answer = NO)
14 Correct 0 ms 256 KB OK (n = 100, answer = YES)
15 Correct 0 ms 256 KB OK (n = 100, answer = YES)
16 Correct 0 ms 256 KB OK (n = 100, answer = YES)
17 Correct 0 ms 256 KB OK (n = 100, answer = YES)
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 256 KB OK (n = 1, answer = NO)
2 Correct 0 ms 256 KB OK (n = 1, answer = NO)
3 Correct 0 ms 256 KB OK (n = 1, answer = YES)
4 Correct 0 ms 256 KB OK (n = 2, answer = YES)
5 Correct 0 ms 256 KB OK (n = 2, answer = YES)
6 Correct 0 ms 256 KB OK (n = 3, answer = YES)
7 Correct 0 ms 256 KB OK (n = 3, answer = YES)
8 Correct 1 ms 256 KB OK (n = 3, answer = YES)
9 Correct 0 ms 256 KB OK (n = 3, answer = YES)
10 Correct 0 ms 256 KB OK (n = 3, answer = YES)
11 Correct 0 ms 256 KB OK (n = 3, answer = YES)
12 Correct 0 ms 256 KB OK (n = 3, answer = YES)
13 Correct 0 ms 256 KB OK (n = 3, answer = NO)
14 Correct 0 ms 256 KB OK (n = 3, answer = YES)
15 Correct 0 ms 256 KB OK (n = 3, answer = YES)
16 Correct 1 ms 256 KB OK (n = 3, answer = NO)
17 Correct 0 ms 256 KB OK (n = 3, answer = NO)
18 Correct 0 ms 256 KB OK (n = 100, answer = NO)
19 Correct 0 ms 256 KB OK (n = 100, answer = YES)
20 Correct 0 ms 256 KB OK (n = 12, answer = YES)
21 Correct 0 ms 256 KB OK (n = 12, answer = YES)
22 Correct 0 ms 256 KB OK (n = 12, answer = NO)
23 Correct 0 ms 256 KB OK (n = 12, answer = NO)
24 Correct 0 ms 256 KB OK (n = 12, answer = YES)
25 Correct 0 ms 256 KB OK (n = 12, answer = YES)
26 Correct 0 ms 256 KB OK (n = 12, answer = YES)
27 Correct 0 ms 256 KB OK (n = 12, answer = YES)
28 Correct 0 ms 256 KB OK (n = 6, answer = YES)
29 Correct 0 ms 256 KB OK (n = 12, answer = YES)
30 Correct 0 ms 256 KB OK (n = 100, answer = NO)
31 Correct 0 ms 256 KB OK (n = 100, answer = YES)
32 Correct 0 ms 256 KB OK (n = 100, answer = NO)
33 Correct 0 ms 256 KB OK (n = 100, answer = YES)
34 Correct 0 ms 256 KB OK (n = 100, answer = YES)
35 Correct 0 ms 256 KB OK (n = 100, answer = YES)
36 Correct 0 ms 256 KB OK (n = 100, answer = YES)
37 Correct 0 ms 256 KB OK (n = 28, answer = YES)
38 Correct 0 ms 256 KB OK (n = 27, answer = YES)
39 Correct 0 ms 256 KB OK (n = 90, answer = YES)
40 Correct 1 ms 256 KB OK (n = 100, answer = YES)
41 Correct 0 ms 256 KB OK (n = 100, answer = YES)
42 Correct 1 ms 256 KB OK (n = 10, answer = YES)
43 Correct 0 ms 256 KB OK (n = 100, answer = YES)
44 Correct 1 ms 256 KB OK (n = 100, answer = YES)
45 Correct 0 ms 256 KB OK (n = 100, answer = YES)
46 Correct 1 ms 256 KB OK (n = 100, answer = YES)
47 Correct 0 ms 256 KB OK (n = 100, answer = NO)
48 Correct 0 ms 256 KB OK (n = 100, answer = NO)
49 Correct 0 ms 256 KB OK (n = 100, answer = NO)
50 Correct 0 ms 256 KB OK (n = 100, answer = YES)
51 Correct 1 ms 256 KB OK (n = 100, answer = YES)
52 Correct 0 ms 256 KB OK (n = 100, answer = YES)
53 Correct 0 ms 256 KB OK (n = 100, answer = YES)
54 Correct 0 ms 256 KB OK (n = 100, answer = YES)
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 256 KB OK (n = 1, answer = NO)
2 Correct 0 ms 256 KB OK (n = 1, answer = NO)
3 Correct 0 ms 256 KB OK (n = 1, answer = YES)
4 Correct 0 ms 256 KB OK (n = 2, answer = YES)
5 Correct 0 ms 256 KB OK (n = 2, answer = YES)
6 Correct 0 ms 256 KB OK (n = 3, answer = YES)
7 Correct 0 ms 256 KB OK (n = 3, answer = YES)
8 Correct 1 ms 256 KB OK (n = 3, answer = YES)
9 Correct 0 ms 256 KB OK (n = 3, answer = YES)
10 Correct 0 ms 256 KB OK (n = 3, answer = YES)
11 Correct 0 ms 256 KB OK (n = 3, answer = YES)
12 Correct 0 ms 256 KB OK (n = 3, answer = YES)
13 Correct 0 ms 256 KB OK (n = 3, answer = NO)
14 Correct 0 ms 256 KB OK (n = 3, answer = YES)
15 Correct 0 ms 256 KB OK (n = 3, answer = YES)
16 Correct 1 ms 256 KB OK (n = 3, answer = NO)
17 Correct 0 ms 256 KB OK (n = 3, answer = NO)
18 Correct 0 ms 256 KB OK (n = 100, answer = NO)
19 Correct 0 ms 256 KB OK (n = 100, answer = YES)
20 Correct 0 ms 256 KB OK (n = 12, answer = YES)
21 Correct 0 ms 256 KB OK (n = 12, answer = YES)
22 Correct 0 ms 256 KB OK (n = 12, answer = NO)
23 Correct 0 ms 256 KB OK (n = 12, answer = NO)
24 Correct 0 ms 256 KB OK (n = 12, answer = YES)
25 Correct 0 ms 256 KB OK (n = 12, answer = YES)
26 Correct 0 ms 256 KB OK (n = 12, answer = YES)
27 Correct 0 ms 256 KB OK (n = 12, answer = YES)
28 Correct 0 ms 256 KB OK (n = 6, answer = YES)
29 Correct 0 ms 256 KB OK (n = 12, answer = YES)
30 Correct 0 ms 256 KB OK (n = 100, answer = NO)
31 Correct 0 ms 256 KB OK (n = 100, answer = YES)
32 Correct 0 ms 256 KB OK (n = 100, answer = NO)
33 Correct 0 ms 256 KB OK (n = 100, answer = YES)
34 Correct 0 ms 256 KB OK (n = 100, answer = YES)
35 Correct 0 ms 256 KB OK (n = 100, answer = YES)
36 Correct 0 ms 256 KB OK (n = 100, answer = YES)
37 Correct 0 ms 256 KB OK (n = 28, answer = YES)
38 Correct 0 ms 256 KB OK (n = 27, answer = YES)
39 Correct 0 ms 256 KB OK (n = 90, answer = YES)
40 Correct 1 ms 256 KB OK (n = 100, answer = YES)
41 Correct 0 ms 256 KB OK (n = 100, answer = YES)
42 Correct 1 ms 256 KB OK (n = 10, answer = YES)
43 Correct 0 ms 256 KB OK (n = 100, answer = YES)
44 Correct 1 ms 256 KB OK (n = 100, answer = YES)
45 Correct 0 ms 256 KB OK (n = 100, answer = YES)
46 Correct 1 ms 256 KB OK (n = 100, answer = YES)
47 Correct 0 ms 256 KB OK (n = 100, answer = NO)
48 Correct 0 ms 256 KB OK (n = 100, answer = NO)
49 Correct 0 ms 256 KB OK (n = 100, answer = NO)
50 Correct 0 ms 256 KB OK (n = 100, answer = YES)
51 Correct 1 ms 256 KB OK (n = 100, answer = YES)
52 Correct 0 ms 256 KB OK (n = 100, answer = YES)
53 Correct 0 ms 256 KB OK (n = 100, answer = YES)
54 Correct 0 ms 256 KB OK (n = 100, answer = YES)
55 Correct 3 ms 672 KB OK (n = 10000, answer = YES)
56 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
57 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
58 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
59 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
60 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
61 Correct 3 ms 640 KB OK (n = 10000, answer = NO)
62 Correct 2 ms 384 KB OK (n = 10000, answer = YES)
63 Correct 3 ms 640 KB OK (n = 10000, answer = NO)
64 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
65 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
66 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
67 Correct 2 ms 640 KB OK (n = 10000, answer = YES)
68 Correct 2 ms 640 KB OK (n = 10000, answer = YES)
69 Correct 2 ms 640 KB OK (n = 10000, answer = YES)
70 Correct 4 ms 768 KB OK (n = 10000, answer = YES)
71 Correct 2 ms 640 KB OK (n = 10000, answer = YES)
72 Correct 1 ms 384 KB OK (n = 865, answer = YES)
73 Correct 1 ms 288 KB OK (n = 820, answer = YES)
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 256 KB OK (n = 1, answer = NO)
2 Correct 0 ms 256 KB OK (n = 1, answer = NO)
3 Correct 0 ms 256 KB OK (n = 1, answer = YES)
4 Correct 0 ms 256 KB OK (n = 2, answer = YES)
5 Correct 0 ms 256 KB OK (n = 2, answer = YES)
6 Correct 0 ms 256 KB OK (n = 3, answer = YES)
7 Correct 0 ms 256 KB OK (n = 3, answer = YES)
8 Correct 1 ms 256 KB OK (n = 3, answer = YES)
9 Correct 0 ms 256 KB OK (n = 3, answer = YES)
10 Correct 0 ms 256 KB OK (n = 3, answer = YES)
11 Correct 0 ms 256 KB OK (n = 3, answer = YES)
12 Correct 0 ms 256 KB OK (n = 3, answer = YES)
13 Correct 0 ms 256 KB OK (n = 3, answer = NO)
14 Correct 0 ms 256 KB OK (n = 3, answer = YES)
15 Correct 0 ms 256 KB OK (n = 3, answer = YES)
16 Correct 1 ms 256 KB OK (n = 3, answer = NO)
17 Correct 0 ms 256 KB OK (n = 3, answer = NO)
18 Correct 0 ms 256 KB OK (n = 100, answer = NO)
19 Correct 0 ms 256 KB OK (n = 100, answer = YES)
20 Correct 0 ms 256 KB OK (n = 12, answer = YES)
21 Correct 0 ms 256 KB OK (n = 12, answer = YES)
22 Correct 0 ms 256 KB OK (n = 12, answer = NO)
23 Correct 0 ms 256 KB OK (n = 12, answer = NO)
24 Correct 0 ms 256 KB OK (n = 12, answer = YES)
25 Correct 0 ms 256 KB OK (n = 12, answer = YES)
26 Correct 0 ms 256 KB OK (n = 12, answer = YES)
27 Correct 0 ms 256 KB OK (n = 12, answer = YES)
28 Correct 0 ms 256 KB OK (n = 6, answer = YES)
29 Correct 0 ms 256 KB OK (n = 12, answer = YES)
30 Correct 0 ms 256 KB OK (n = 100, answer = NO)
31 Correct 0 ms 256 KB OK (n = 100, answer = YES)
32 Correct 0 ms 256 KB OK (n = 100, answer = NO)
33 Correct 0 ms 256 KB OK (n = 100, answer = YES)
34 Correct 0 ms 256 KB OK (n = 100, answer = YES)
35 Correct 0 ms 256 KB OK (n = 100, answer = YES)
36 Correct 0 ms 256 KB OK (n = 100, answer = YES)
37 Correct 0 ms 256 KB OK (n = 28, answer = YES)
38 Correct 0 ms 256 KB OK (n = 27, answer = YES)
39 Correct 0 ms 256 KB OK (n = 90, answer = YES)
40 Correct 1 ms 256 KB OK (n = 100, answer = YES)
41 Correct 0 ms 256 KB OK (n = 100, answer = YES)
42 Correct 1 ms 256 KB OK (n = 10, answer = YES)
43 Correct 0 ms 256 KB OK (n = 100, answer = YES)
44 Correct 1 ms 256 KB OK (n = 100, answer = YES)
45 Correct 0 ms 256 KB OK (n = 100, answer = YES)
46 Correct 1 ms 256 KB OK (n = 100, answer = YES)
47 Correct 0 ms 256 KB OK (n = 100, answer = NO)
48 Correct 0 ms 256 KB OK (n = 100, answer = NO)
49 Correct 0 ms 256 KB OK (n = 100, answer = NO)
50 Correct 0 ms 256 KB OK (n = 100, answer = YES)
51 Correct 1 ms 256 KB OK (n = 100, answer = YES)
52 Correct 0 ms 256 KB OK (n = 100, answer = YES)
53 Correct 0 ms 256 KB OK (n = 100, answer = YES)
54 Correct 0 ms 256 KB OK (n = 100, answer = YES)
55 Correct 3 ms 672 KB OK (n = 10000, answer = YES)
56 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
57 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
58 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
59 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
60 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
61 Correct 3 ms 640 KB OK (n = 10000, answer = NO)
62 Correct 2 ms 384 KB OK (n = 10000, answer = YES)
63 Correct 3 ms 640 KB OK (n = 10000, answer = NO)
64 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
65 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
66 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
67 Correct 2 ms 640 KB OK (n = 10000, answer = YES)
68 Correct 2 ms 640 KB OK (n = 10000, answer = YES)
69 Correct 2 ms 640 KB OK (n = 10000, answer = YES)
70 Correct 4 ms 768 KB OK (n = 10000, answer = YES)
71 Correct 2 ms 640 KB OK (n = 10000, answer = YES)
72 Correct 1 ms 384 KB OK (n = 865, answer = YES)
73 Correct 1 ms 288 KB OK (n = 820, answer = YES)
74 Correct 2 ms 512 KB OK (n = 7500, answer = NO)
75 Correct 3 ms 640 KB OK (n = 10000, answer = NO)
76 Correct 4 ms 640 KB OK (n = 10000, answer = NO)
77 Correct 3 ms 640 KB OK (n = 10000, answer = NO)
78 Correct 3 ms 640 KB OK (n = 10000, answer = NO)
79 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
80 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
81 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
82 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
83 Correct 3 ms 640 KB OK (n = 10000, answer = NO)
84 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
85 Correct 3 ms 640 KB OK (n = 10000, answer = NO)
86 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
87 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
88 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
89 Correct 2 ms 768 KB OK (n = 10000, answer = YES)
90 Correct 2 ms 640 KB OK (n = 10000, answer = YES)
91 Correct 2 ms 640 KB OK (n = 10000, answer = YES)
92 Correct 2 ms 640 KB OK (n = 10000, answer = YES)
93 Correct 2 ms 640 KB OK (n = 10000, answer = YES)
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 256 KB OK (n = 1, answer = NO)
2 Correct 0 ms 256 KB OK (n = 1, answer = NO)
3 Correct 0 ms 256 KB OK (n = 1, answer = YES)
4 Correct 0 ms 256 KB OK (n = 2, answer = YES)
5 Correct 0 ms 256 KB OK (n = 2, answer = YES)
6 Correct 0 ms 256 KB OK (n = 3, answer = YES)
7 Correct 0 ms 256 KB OK (n = 3, answer = YES)
8 Correct 1 ms 256 KB OK (n = 3, answer = YES)
9 Correct 0 ms 256 KB OK (n = 3, answer = YES)
10 Correct 0 ms 256 KB OK (n = 3, answer = YES)
11 Correct 0 ms 256 KB OK (n = 3, answer = YES)
12 Correct 0 ms 256 KB OK (n = 3, answer = YES)
13 Correct 0 ms 256 KB OK (n = 3, answer = NO)
14 Correct 0 ms 256 KB OK (n = 3, answer = YES)
15 Correct 0 ms 256 KB OK (n = 3, answer = YES)
16 Correct 1 ms 256 KB OK (n = 3, answer = NO)
17 Correct 0 ms 256 KB OK (n = 3, answer = NO)
18 Correct 0 ms 256 KB OK (n = 100, answer = NO)
19 Correct 0 ms 256 KB OK (n = 100, answer = YES)
20 Correct 0 ms 256 KB OK (n = 12, answer = YES)
21 Correct 0 ms 256 KB OK (n = 12, answer = YES)
22 Correct 0 ms 256 KB OK (n = 12, answer = NO)
23 Correct 0 ms 256 KB OK (n = 12, answer = NO)
24 Correct 0 ms 256 KB OK (n = 12, answer = YES)
25 Correct 0 ms 256 KB OK (n = 12, answer = YES)
26 Correct 0 ms 256 KB OK (n = 12, answer = YES)
27 Correct 0 ms 256 KB OK (n = 12, answer = YES)
28 Correct 0 ms 256 KB OK (n = 6, answer = YES)
29 Correct 0 ms 256 KB OK (n = 12, answer = YES)
30 Correct 0 ms 256 KB OK (n = 100, answer = NO)
31 Correct 0 ms 256 KB OK (n = 100, answer = YES)
32 Correct 0 ms 256 KB OK (n = 100, answer = NO)
33 Correct 0 ms 256 KB OK (n = 100, answer = YES)
34 Correct 0 ms 256 KB OK (n = 100, answer = YES)
35 Correct 0 ms 256 KB OK (n = 100, answer = YES)
36 Correct 0 ms 256 KB OK (n = 100, answer = YES)
37 Correct 0 ms 256 KB OK (n = 28, answer = YES)
38 Correct 0 ms 256 KB OK (n = 27, answer = YES)
39 Correct 0 ms 256 KB OK (n = 90, answer = YES)
40 Correct 1 ms 256 KB OK (n = 100, answer = YES)
41 Correct 0 ms 256 KB OK (n = 100, answer = YES)
42 Correct 1 ms 256 KB OK (n = 10, answer = YES)
43 Correct 0 ms 256 KB OK (n = 100, answer = YES)
44 Correct 1 ms 256 KB OK (n = 100, answer = YES)
45 Correct 0 ms 256 KB OK (n = 100, answer = YES)
46 Correct 1 ms 256 KB OK (n = 100, answer = YES)
47 Correct 0 ms 256 KB OK (n = 100, answer = NO)
48 Correct 0 ms 256 KB OK (n = 100, answer = NO)
49 Correct 0 ms 256 KB OK (n = 100, answer = NO)
50 Correct 0 ms 256 KB OK (n = 100, answer = YES)
51 Correct 1 ms 256 KB OK (n = 100, answer = YES)
52 Correct 0 ms 256 KB OK (n = 100, answer = YES)
53 Correct 0 ms 256 KB OK (n = 100, answer = YES)
54 Correct 0 ms 256 KB OK (n = 100, answer = YES)
55 Correct 3 ms 672 KB OK (n = 10000, answer = YES)
56 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
57 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
58 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
59 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
60 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
61 Correct 3 ms 640 KB OK (n = 10000, answer = NO)
62 Correct 2 ms 384 KB OK (n = 10000, answer = YES)
63 Correct 3 ms 640 KB OK (n = 10000, answer = NO)
64 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
65 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
66 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
67 Correct 2 ms 640 KB OK (n = 10000, answer = YES)
68 Correct 2 ms 640 KB OK (n = 10000, answer = YES)
69 Correct 2 ms 640 KB OK (n = 10000, answer = YES)
70 Correct 4 ms 768 KB OK (n = 10000, answer = YES)
71 Correct 2 ms 640 KB OK (n = 10000, answer = YES)
72 Correct 1 ms 384 KB OK (n = 865, answer = YES)
73 Correct 1 ms 288 KB OK (n = 820, answer = YES)
74 Correct 2 ms 512 KB OK (n = 7500, answer = NO)
75 Correct 3 ms 640 KB OK (n = 10000, answer = NO)
76 Correct 4 ms 640 KB OK (n = 10000, answer = NO)
77 Correct 3 ms 640 KB OK (n = 10000, answer = NO)
78 Correct 3 ms 640 KB OK (n = 10000, answer = NO)
79 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
80 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
81 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
82 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
83 Correct 3 ms 640 KB OK (n = 10000, answer = NO)
84 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
85 Correct 3 ms 640 KB OK (n = 10000, answer = NO)
86 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
87 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
88 Correct 3 ms 640 KB OK (n = 10000, answer = YES)
89 Correct 2 ms 768 KB OK (n = 10000, answer = YES)
90 Correct 2 ms 640 KB OK (n = 10000, answer = YES)
91 Correct 2 ms 640 KB OK (n = 10000, answer = YES)
92 Correct 2 ms 640 KB OK (n = 10000, answer = YES)
93 Correct 2 ms 640 KB OK (n = 10000, answer = YES)
94 Correct 1 ms 384 KB OK (n = 1, answer = YES)
95 Correct 1 ms 256 KB OK (n = 3, answer = YES)
96 Correct 0 ms 256 KB OK (n = 3, answer = NO)
97 Correct 0 ms 256 KB OK (n = 3, answer = YES)
98 Correct 35 ms 4468 KB OK (n = 150000, answer = NO)
99 Correct 56 ms 5620 KB OK (n = 200000, answer = YES)
100 Correct 61 ms 6252 KB OK (n = 200000, answer = NO)
101 Correct 57 ms 5484 KB OK (n = 200000, answer = YES)
102 Correct 42 ms 3960 KB OK (n = 200000, answer = YES)
103 Correct 54 ms 5612 KB OK (n = 200000, answer = YES)
104 Correct 53 ms 5484 KB OK (n = 200000, answer = YES)
105 Correct 51 ms 4844 KB OK (n = 200000, answer = NO)
106 Correct 60 ms 5356 KB OK (n = 200000, answer = YES)
107 Correct 79 ms 6252 KB OK (n = 200000, answer = NO)
108 Correct 52 ms 4844 KB OK (n = 200000, answer = NO)
109 Correct 51 ms 4852 KB OK (n = 200000, answer = NO)
110 Correct 44 ms 5100 KB OK (n = 200000, answer = YES)
111 Correct 34 ms 5228 KB OK (n = 200000, answer = YES)
112 Correct 40 ms 5356 KB OK (n = 200000, answer = YES)
113 Correct 37 ms 5236 KB OK (n = 200000, answer = YES)
114 Correct 37 ms 5236 KB OK (n = 200000, answer = YES)
115 Correct 37 ms 5228 KB OK (n = 200000, answer = YES)
116 Correct 42 ms 5100 KB OK (n = 200000, answer = YES)
117 Correct 44 ms 5100 KB OK (n = 200000, answer = YES)