#8715: TLE......


Flamewind (Charizard_97)


我这样做的时候,test 4 和 9 都tle.... 为什么?
求大神帮忙...... 
#include <iostream>

using namespace std;

int main(){
    long a,b,c;
    int d;
    while (cin >>a>>b){
        c=a;
        d=0;
        while (c<=b){
            if (c%2==0){
                d++ ;
            }
            c++;
        }
        cout <<d <<endl;
    }
return 0;
}
 
#8850: Re:TLE......


lswei (魏子轩)


这题是有规律的,如果两个数都是奇数就输出第二个数减去第一个数去整除2,否则就输出第二个数减去第一个数去整除2+1.我的程序是pascal的,给你作参考:
var
  a,b,c:longint;
begin
  while not eof do begin
   readln(a,b);
   c:=((b-a) div 2+1);
   if (a mod 2<>0) and (b mod 2<>0) then c:=((b-a) div 2);
   writeln(c);
  end;
end.