ENG  RUSTimus Online Judge
Online Judge
Задачи
Авторы
Соревнования
О системе
Часто задаваемые вопросы
Новости сайта
Форум
Ссылки
Архив задач
Отправить на проверку
Состояние проверки
Руководство
Регистрация
Исправить данные
Рейтинг авторов
Текущее соревнование
Расписание
Прошедшие соревнования
Правила
вернуться в форум

Обсуждение задачи 1196. Экзамен по истории

TLE Help Please
Послано Varun Kumar(Fundu) 4 окт 2008 20:32
import java.io.*;
import java.util.*;
public class FindinArray_1196{
    public static int binarySearch( int  a[], int x )
        {
            int low = 0;
            int high = a.length - 1;
            int mid;

            while( low <= high )
            {
                mid = ( low + high ) / 2;

                if( a[ mid ] < x )
                    low = mid + 1;
                else if( a[ mid ] > x )
                    high = mid - 1;
                else
                    return mid;
            }

            return -1;     // NOT_FOUND = -1
        }


public static void main(String args[])
{
    Scanner sc=new Scanner(System.in);
    int count=0;

    int n=sc.nextInt();
    int arr[]=new int[n];


    for(int i=0;i<n;i++)
    {
        arr[i]=sc.nextInt();
    }


    int m=sc.nextInt();
    int brr[]=new int[m+1];

    for(int i=0;i<m;i++)
    {
        brr[i]=sc.nextInt();
    }




    for(int i=0;i<m;i++)
    {



            if(binarySearch(arr,brr[i])!=-1)
            count++;




    }


    System.out.println(count);


}
}
Re: TLE Help Please
Послано Iliya (Java) 26 окт 2008 05:01
Scanner is very slow, use StreamTokenizer