Cod sursa(job #432401)

Utilizator ncbllrNegrii Costin ncbllr Data 2 aprilie 2010 12:31:32
Problema Cautare binara Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 1.6 kb
#include<iostream.h>
#include<stdio.h>  
FILE *f,*g; 
int n,m;
int v[100000],i,a[100000];
main()
{
    f=fopen("cautbin.in","r");  
    g=fopen("cautbin.out","w"); 
    cin>>n;
    for(i = 1; i <= n; i++) 
          cin>>v[i];
    cin>>m;
    for(int j = 1; j <= m; j++)
    {     char b[100000];
          cin>>b[j];
          cin>>a[j];
    }        
    for(i = n; i >= 1; i--)
    {     for(int j = 1;j <= m;j = j + 3)         
          {
               int p = 0;
               if(v[i] == a[j]) 
               {
                       p = 1;
                       a[j] = i;
                       break;
               }
               if(p == 0) a[j] = -1;
           }                  
          for(int j = 2;j <= m;j = j + 3)         
          {
               int p = 0;
                   
               if(v[i] <= a[j]) 
               {
                       p = 1;
                       a[j] = i;
                       break;
               }
               if(p == 0) a[j] = -1;
             
           }    
     }
     for(i = 1; i <= n; i++) 
            for(int j = 3;j <= m;j = j + 3)         
            {
               int p = 0;
                   
               if(v[i] >= a[j]) 
               {
                       p = 1;
                       a[j] = i;
                       break;
               }
               if(p == 0) a[j] = -1;
             
            }        
     for (i = 1; i <= m; i++)
             cout<<a[i]<<endl;
     fclose(f);
     fclose(g);        
     return 0;
     
}