Pagini recente » Cod sursa (job #1370348) | Cod sursa (job #2401277) | Cod sursa (job #592289) | Cod sursa (job #294761) | Cod sursa (job #2456587)
#include <bits/stdc++.h>
using namespace std;
ifstream f("economie.in");
ofstream g("economie.out");
const int NMAX = 1005;
int n,v[NMAX], dp[NMAX], used[NMAX], MAX, ans;
int main(){
int i,j;
f >> n;
for(i = 1 ; i <= n ; i++){
f >> v[i];
MAX = max(MAX, v[i]);
}
for(i = 1 ; i <= n ; i++)
if(!dp[v[i]]){
used[i] = 1;
ans++;
dp[v[i]] = 1;
for(j = i ; j <= MAX ; j++)
if(dp[j])
dp[j + v[i]] = 1;
}
g << ans << "\n";
for(i = 1 ; i <= n ; i++)
if(used[i])
g << i << "\n";
return 0;
}