Pagini recente » Cod sursa (job #2259159) | Cod sursa (job #1012546) | Cod sursa (job #2672365) | Cod sursa (job #1012538) | Cod sursa (job #2203196)
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("cautbin.in");
ofstream fout("cautbin.out");
int main()
{
int n;
fin >> n;
int v[n];
int nr;
for(int i = 0; i < n; i++)
{
fin>>v[i];
}
fin >> nr;
int operatii[nr][2];
for(int i = 0; i < nr; i++)
{
fin >> operatii[i][0] >> operatii[i][1];
}
int start = 0;
int end = n - 1;
int index = -1;
while(start <= end)
{
int mid = start + (end - start)/2;
if(operatii[0][1] == v[mid]) {
index = mid;
start = mid + 1;
}
else if(v[mid] < operatii[0][1])
{
start = mid + 1;
}
else if(v[mid] > operatii[0][1])
{
end = mid - 1;
}
}
fout << index+1 << endl;
fout.flush();
start = 0;
end = n - 1;
index = -1;
while(start <= end)
{
int mid = start + (end - start)/2;
if(v[mid] <= operatii[1][1]) {
index = mid;
start = mid + 1;
}
else if(v[mid] > operatii[1][1])
{
end = mid - 1;
}
}
fout << index+1 << endl;
fout.flush();
start = 0;
end = n - 1;
index = -1;
while(start <= end)
{
int mid = start + (end - start)/2;
if(operatii[2][1] <= v[mid]) {
index = mid;
end = mid - 1;
}
else if(v[mid] < operatii[1][1])
{
start = mid + 1;
}
}
fout << index+1 << endl;
fout.flush();
return 0;
}