Go: package main

import (
	"bufio"
	"os"
	"strings"
	"strconv"
	"fmt"
)

var scanner= bufio.NewScanner(os.Stdin)

func main() {
	result := make([][]int, 4)
	for i :=range result {
		result[i] = make([]int, 2)
	}
	for scanner.Scan() {
		buf := strings.Split(scanner.Text(), " ")
		l, _ := strconv.ParseFloat(buf[0], 64)
		r, _ := strconv.ParseFloat(buf[1], 64)
		if 1.1 <= l {
			result[0][0]++
		} else if 0.6 <= l && l < 1.1 {
			result[1][0]++
		} else if 0.2 <= l && l < 0.6 {
			result[2][0]++
		} else {
			result[3][0]++
		}
		if 1.1 <= r {
			result[0][1]++
		} else if 0.6 <= r && r < 1.1 {
			result[1][1]++
		} else if 0.2 <= r && r < 0.6 {
			result[2][1]++
		} else {
			result[3][1]++
		}
	}
	ans := make([][]string, 4)
	for i :=range ans {
		ans[i] = make([]string, 2)
	}
	for i := range result {
		for j := range result[i] {
			ans[i][j] = strconv.Itoa(result[i][j])
		}
	}
	for i := 0; i < 4; i++ {
		fmt.Println(strings.Join(ans[i], " "))
	}
}

Python: def f(a):
    if a>1.0:return 0
    elif a>0.5:return 1
    elif a>0.1:return 2
    else:return 3
b=[0]*8
while 1:
    try:l,r=map(float,input().split())
    except:break
    b[f(l)]+=1
    b[4+f(r)]+=1
for i in range(4):print(b[i],b[4+i])

Python: import sys
LA = RA = 0
LB = RB = 0
LC = RC = 0
LD = RD = 0

for i in sys.stdin:
    l,r = map(float,i.split())
    if l >= 1.1:
        LA += 1
    elif 0.6 <= l <1.1:
        LB += 1
    elif 0.2 <= l < 0.6:
        LC += 1
    else:
        LD += 1

    if r >= 1.1:
        RA += 1
    elif 0.6 <= r <1.1:
        RB += 1
    elif 0.2 <= r < 0.6:
        RC += 1
    else:
        RD += 1

print(LA,RA)
print(LB,RB)
print(LC,RC)
print(LD,RD)

Python: lvl = [1.1, 0.6, 0.2, 0.0] 
rst = [[0]*4 for _ in range(2)]
eyes = []
while True:
    try:
        l,r = map(float,input().strip().split())
        eyes.append([l,r])
    except EOFError:
        break

for e in eyes:
    for lr in range(2):
        for l in range(len(lvl)):
            if e[lr]>=lvl[l]: 
                rst[lr][l] += 1
                break
        else:
            raise ValueError('Do not come here')

for lv in range(len(lvl)):
    print(rst[0][lv]," ",rst[1][lv])

Python: ref = [1.1,0.6,0.2,0.0]
rank = [[0,0] for i in range(4)]
while True:
    try:
        eye = map(float, raw_input().split())
        for i in range(2): 
            for j in range(4):
                if eye[i] >= ref[j]: rank[j][i] += 1
                break
    except:
        break

    print (" ".join(map(str, rank[i])) for i in range(4))

Python: lvl = [1.1, 0.6, 0.2, 0.0] 
rst = [[0]*4 for _ in range(2)]
eyes = []
while True:
    try:
        l,r = map(float,input().strip().split())
        eyes.append([l,r])
    except EOFError:
        break

for e in eyes:
    for lr in range(2):
        for l in range(len(lvl)):
            if e[lr]>=lvl[l]: 
                rst[lr][l] += 1
                break
        else:
            raise ValueError('Do not come here')

for lv in range(len(lvl)):
    print(rst[0][lv]," ",rst[1][lv])

Python: def f(a):
    if a>1.0:return 0
    elif a>0.5:return 1
    elif a>0.1:return 2
    else:return 3
b=[0]*8
while 1:
    try:l,r=map(float,input().split())
    except:break
    b[f(l)]+=1
    b[4+f(r)]+=1
for i in range(4):print(b[i],b[4+i])

Python: r_A = 0
r_B = 0
r_C = 0
r_D = 0
l_A = 0
l_B = 0
l_C = 0
l_D = 0

while True :
    try :
        l, r = map(float, input().split())
    except EOFError :
        break
    
    if l >= 1.1 :
        l_A += 1
    elif l >= 0.6 :
        l_B += 1
    elif l >= 0.2 :
        l_C += 1
    else :
        l_D += 1
    if r >= 1.1 :
        r_A += 1
    elif r >= 0.6 :
        r_B += 1
    elif r >= 0.2 :
        r_C += 1
    else :
        r_D += 1

print(l_A, r_A)
print(l_B, r_B)
print(l_C, r_C)
print(l_D, r_D)

Python: from collections import Counter

def check(f):
  if f >= 1.1:
    return "A"
  elif f >= 0.6:
    return "B"
  elif f >= 0.2:
    return "C"
  else:
    return "D"

dicl = Counter()
dicr = Counter()
while True:
  try:
    l, r = map(float, input().split())
    lx, rx = check(l), check(r)
    dicl[lx] += 1
    dicr[rx] += 1
  except EOFError:
    break
for alpha in ("A", "B", "C", "D"):
  print(dicl[alpha], dicr[alpha])

Python: tbl = [[0 for j in range(4)] for i in range(2)]
while True:
    try: p = list(map(float, input().split()))
    except: break
    for i in range(2):
        if p[i] >= 1.1: tbl[i][0] += 1
        elif p[i] >= 0.6: tbl[i][1] += 1
        elif p[i] >= 0.2: tbl[i][2] += 1
        else: tbl[i][3] += 1
for i in range(4):
    print(tbl[0][i], tbl[1][i])

Python: 
L = [[0 for x in range(4)] for y in range(2)]

while True:
    try:
        E = [ float(x) for x in input().split()]
        for i in range(2):
            if E[i] >= 1.1:
                L[i][0] += 1
            elif E[i] >= 0.6:
                L[i][1] += 1
            elif E[i] >= 0.2:
                L[i][2] += 1
            else:
                L[i][3] += 1
            
    except EOFError:
        break

for i in range(4):
    print(L[0][i], L[1][i])

Python: la, lb, lc, ld = 0, 0, 0, 0
ra, rb, rc, rd = 0, 0, 0, 0

while True:
    try: n = input()
    except: break

    l, r = map(float, n.split())
    
    if 1.1 <= l:
        la += 1
    elif 0.6 <= l < 1.1:
        lb += 1
    elif 0.2 <= l < 0.6:
        lc += 1
    elif l < 0.2:
        ld += 1
    
    if 1.1 <= r:
        ra += 1
    elif 0.6 <= r < 1.1:
        rb += 1
    elif 0.2 <= r < 0.6:
        rc += 1
    elif r < 0.2:
        rd += 1

print(la, ra)
print(lb, rb)
print(lc, rc)
print(ld, rd)

Python: def check(n, array):
    if 1.1 <= n:
        array[0] += 1
    elif 0.6 <= n < 1.1:
        array[1] += 1
    elif 0.2 <= n < 0.6:
        array[2] += 1
    else:
        array[3] += 1


left = [0] * 4
right = [0] * 4
while 1:
    try:
        l, r = map(float, input().split())
    except:
        break

    check(l, left)
    check(r, right)

for l, r in zip(left, right):
    print(l, r)

Python: al,ar,bl,br,cl,cr,dl,dr=0,0,0,0,0,0,0,0
while True:
    try:
        le,re=map(float,input().split())
        if le<0.2:
            dl+=1
        if le>= 0.2 and le<0.6:
            cl += 1
        if le >= 0.6 and le<1.1:
            bl += 1
        if le >= 1.1:
            al += 1
        if re<0.2:
            dr+=1
        if re>= 0.2 and re<0.6:
            cr += 1
        if re >= 0.6 and re<1.1:
            br+= 1
        if re >= 1.1:
            ar += 1
    except:
        print(al,ar)
        print(bl,br)
        print(cl,cr)
        print(dl,dr)
        break

Python: eyes = [[0 for i in range(2)] for j in range(4)]
while True:
    try:
        a = list(map(float, input().split()))
    except:
        break
    for i in range(2):
        if a[i] >= 1.1: eyes[0][i]+=1
        elif a[i] >= 0.6: eyes[1][i]+=1
        elif a[i] >= 0.2: eyes[2][i]+=1
        else: eyes[3][i]+=1
for i in range(4):
    print(*eyes[i])

Python: import sys

BASE = [1.1, 0.6, 0.2, 0.0]
COUNT = len(BASE)


def eye_test(num):
    for index, parameter in enumerate(BASE):
        if parameter <= num:
            return index


left_counter = [0] * COUNT
right_counter = [0] * COUNT

for line in sys.stdin:
    left, right = [float(item) for item in line[:-1].split(" ")]
    left_eye, right_eye = eye_test(left), eye_test(right)
    left_counter[left_eye] += 1
    right_counter[right_eye] += 1

for item1, item2 in zip(left_counter, right_counter):
    print(item1, item2)