|  | 
|  | 
| вернуться в форум | Помогите time limit wa8 #include <iostream>
 int main()
 {
 long int i, n, m, z, s, k, a[16000], l, r, mid;
 std::cin >> n;
 k=0;
 for (i=0; i<n; i++)
 {
 std::cin >> z;
 if ((i!=0) && (z!=a[k]))
 {
 a[k]=z; k++;
 }
 if (i==0)
 {
 a[k]=z; k++;
 }
 }
 n=k-1;
 std::cin >> m;
 s=0;
 k=0;
 for (i=0; i<m; i++)
 {
 l=0; r=n; k=0;
 std::cin >> z;
 if ((z>a[0]) && (z<a[n]))
 while ((l<r) && (k<n-1))
 {
 k=k+1;
 mid=(l+r)/2;
 if (a[mid]>z)
 r=mid;
 else if (a[mid]<z)
 l=mid;
 else if (a[mid]==z)
 break;
 }
 else if ((z==a[0]) || (z==a[n]))
 s++;
 if ((a[mid]==z) && (mid!=0))
 s++;
 }
 std::cout << s;
 }
Re: Помогите time limit wa8 Твоя программа слишком долго работает | 
 | 
|