Let the current ages be S (Selina) and N (Nancy). 10 years ago: S-10+N-10=20, so S+N=40. Therefore, N=40-S, so neither current age can exceed 40, and assuming ages are whole years, the minimum is 11 and maximum 29.
Selina is 6 times as old as Nancy was x years ago. That means S is a multiple of 6, limiting the possibilities to just 3 pairs of ages (S,N)=(12,28), (18,22), (24,16). Two of these put Selina younger than Nancy, and one older than Nancy. 10 years ago the ages would have been (S-10,N-10)=(2,18), (8,12), (14,6), which add up to 20. The (S,N) pairs tell us for each pair what age Nancy was x years ago: (2), (3), (4), when Selina is now 12, 18 or 24 and Nancy is now 28, 22 or 16. From this we can deduce x: 26, 19 or 12, and we can work out (S-x,N-x): (-14,2), (-1,3), (12,4). The only sensible solution is (12,4) making (S,N)=(24,16), so Selina is 24 and Nancy is 16 years old. 12 years ago Selina was 12, half the age she is now.
Another way of solving the problem is to use algebra and substitution:
x years ago Nancy was N-x years old and S=6(N-x) and S=2(S-x). S=2S-2x, making x=S/2. N=40-S, so S=6(40-S-x)=240-6S-6x=240-6S-3S=240-9S, and 10S=240, making S=24 and N=16.
The question actually contains too much information, because it is not necessary to know that Selina was "twice younger" when she was 6 times Nancy's age. S=24 and N=16 is the only logical answer.