data b;
informat time time8.;
format time time8.;
input time /n;
cards;
9:25:08
1
9:30:03
1
9:30:08
1
9:30:13
1
9:30:18
0
9:30:23
0
9:30:33
1
9:30:38
0
9:30:43
1
9:30:53
1
9:31:03
1
9:31:08
0
;run;
proc sort data=b;
by time;
run;
data want;
set b;
retain starttime 0;
if _n_=1 then starttime=time;
if n^=lag(n) then do;starttime=time;d=0;end;
if n=lag(n) then d=time-starttime;
run;