Pagini recente » Cod sursa (job #2970152) | Cod sursa (job #1594212) | Cod sursa (job #1284483) | Cod sursa (job #388836) | Cod sursa (job #1864660)
#include <fstream>
#include <vector>
using namespace std;
vector<int> v, sir;
int n;
void read()
{
ifstream fin ("subsir2.in");
fin >> n;
int x;
for (int i = 0; i < n; ++i){
fin >> x;
v.push_back(x);
}
fin.close();
}
int minNum(int l, int r)
{
int mn = 1 << 30, pos = l;
for (int i = l; i <= r; ++i)
if (v[i] <= mn){
mn = v[i];
pos = i;
}
return pos;
}
void magic()
{
int i = -1;
while(i < n-1){
i = minNum(i + 1, n-1);
sir.push_back(i);
}
}
void write()
{
ofstream fout ("subsir2.out");
fout << sir.size() << "\n";
for (unsigned i = 0; i < sir.size(); ++i)
fout << sir[i] + 1 << " ";
fout.close();
}
int main()
{
read();
magic();
write();
return 0;
}