제출 #757249

#제출 시각아이디문제언어결과실행 시간메모리
757249SebDetecting Molecules (IOI16_molecules)C++17
31 / 100
1070 ms53816 KiB
#include "molecules.h"
#include <bits/stdc++.h>

using namespace std;

typedef long long ll;

vector <int> sum[10005],aux[10005];

std::vector<int> find_subset(int l, int u, std::vector<int> w) {
    for (int i=0;i<w.size();i++) {
        for (int j=0;j<=10000;j++) {
            if (!sum[j].empty()) {
                if (w[i]+j < 10005) {
                    aux[w[i]+j] = sum[j];
                    aux[w[i]+j].push_back(i);
                }
            }
        }
        for (int j=0;j<=10000;j++) {
            if (!aux[j].empty()) swap(aux[j],sum[j]);
            aux[j].clear();
        }
        if (sum[w[i]].empty()) sum[w[i]].push_back(i);
    }
    for (int i=l;i<=u;i++) if (!sum[i].empty()) return sum[i];
    return vector<int>(0);
}

컴파일 시 표준 에러 (stderr) 메시지

molecules.cpp: In function 'std::vector<int> find_subset(int, int, std::vector<int>)':
molecules.cpp:11:19: warning: comparison of integer expressions of different signedness: 'int' and 'std::vector<int>::size_type' {aka 'long unsigned int'} [-Wsign-compare]
   11 |     for (int i=0;i<w.size();i++) {
      |                  ~^~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...