I have tried this query , which is working
;with cte
as (select activitycode
,activityname
,modifiedon
,row_number() over(order by cast(datediff(minute,0,modifiedon)
as bigint) *60 +datepart(second,modifiedon) desc ,activityname desc )
as rn
FROM #activities AC
INNER JOIN #activitiescategories ACG
ON Ac.activityCategoryIncId = ACG.activityCategoryIncId AND Ac.activityCategorySqlId = ACG.activityCategorySqlId
where activityCategoryCode in ('EAS-31A1'
,'EAS-31A2'
)
)
select activitycode
,activityname
,modifiedon
from cte
where rn=1