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], " "))
	}
}

C++: #include<stdio.h>

int main(){
	int i=0,lt[4]={0},rt[4]={0};
	double left[41],right[41];
	while(scanf("%lf",&left[i])!=EOF){
		scanf("%lf",&right[i]);
		if(left[i]>=1.1) lt[0]++;
		else if(left[i]>=0.6) lt[1]++;
		else if(left[i]>=0.2) lt[2]++;
		else lt[3]++;
		if(right[i]>=1.1) rt[0]++;
		else if(right[i]>=0.6) rt[1]++;
		else if(right[i]>=0.2) rt[2]++;
		else rt[3]++;
		i++;
	}
	for(i=0;i<4;i++){
		printf("%d %d\n",lt[i],rt[i]);
	}
	return 0;
}

C++: #include <iostream>

using namespace std;
typedef pair<double, double> P;

void solve()
{
	int rcount[4] = {0};
	int lcount[4] = {0};
	P p;
	while(cin >> p.first >> p.second)
	{
		if(p.first >= 1.1)
		{
			lcount[0]++;
		}
		else if(p.first >= 0.6)
		{
			lcount[1]++;
		}
		else if(p.first >= 0.2)
		{
			lcount[2]++;
		}
		else
		{
			lcount[3]++;
		}

		if(p.second >= 1.1)
		{
			rcount[0]++;
		}
		else if(p.second >= 0.6)
		{
			rcount[1]++;
		}
		else if(p.second >= 0.2)
		{
			rcount[2]++;
		}
		else
		{
			rcount[3]++;
		}
	}
	for(int i = 0; i < 4; ++i)
	{
		cout << lcount[i] << " " << rcount[i] << endl;
	}
}

int main()
{
	solve();
	return(0);
}

C++: #include <iostream>
#include <cstring>
using namespace std;

int main()
{
	double eye[ 2 ];
	int result[ 4 ][ 2 ];
	memset( result, 0, sizeof(result) );

	while( cin >> eye[ 0 ] >> eye[ 1 ] ){
		for( int i = 0; i < 2; ++i ){
			if( eye[ i ] >= 1.1 ){
				++result[ 0 ][ i ];
			}else if( eye[ i ] >= 0.6 ){
				++result[ 1 ][ i ];
			}else if( eye[ i ] >= 0.2 ){
				++result[ 2 ][ i ];
			}else{
				++result[ 3 ][ i ];
			}
		}
	}

	for( int i = 0; i < 4; ++i ){
		cout << result[ i ][ 0 ] << " " << result[ i ][ 1 ] << endl;
	}

	return 0;
}

C++: #include <iostream>
#include <string>
#include <stack>
#include <queue>
#include <vector>
#include <algorithm>
#include <cmath>

using namespace std;

#define loop(i,a,b) for(int i=(a);i<int(b);i++)
#define rep(i,b) loop(i,0,b)
#define all(c) (c).begin(), (c).end()
double const eps = 1e-8;

int f(double x){
    if (x + eps >= 1.1){
        return 'A';
    }
    if (x + eps >= 0.6){
        return 'B';
    }
    if (x + eps >= 0.2){
        return 'C';
    }
    return 'D';
}

int main(){
    double L, R;
    int ans[256][2] = {};
    while (cin >> L >> R){
        ans[f(L)][0]++;
        ans[f(R)][1]++;
    }
    rep(i, 4){
        cout << ans["ABCD"[i]][0] << " " << ans["ABCD"[i]][1] << endl;
    }
}

C++: #include<iostream>
using namespace std;
int main(){
  int rv[5]={0};
  int lv[5]={0};
  double rh,lh;
  while(cin>>lh>>rh){
    if(rh>=1.1) rv[1]++;
    else if(rh>=0.6) rv[2]++;
    else if(rh>=0.2) rv[3]++;
    else rv[4]++;
    if(lh>=1.1) lv[1]++;
    else if(lh>=0.6) lv[2]++;
    else if(lh>=0.2) lv[3]++;
    else lv[4]++;
  }
  for(int i=1;i<5;i++) cout << lv[i] << ' ' << rv[i] << endl;
  return 0;
}

C++: 
#include<iostream>
#include<string>
#include<cmath>
#include<vector>
#include<stack>
#include<queue>
#include<algorithm>
#include<complex>
using namespace std ;
typedef vector<int> vi ;
typedef vector<vi> vvi ;
typedef vector<string> vs ;
typedef pair<int, int> pii; 
typedef long long ll ;

#define loop(i,a,b) for(int i = a ; i < b ; i ++)
#define rep(i,a) loop(i,0,a)
#define all(a) (a).begin(),(a).end()
int main(void){
  double r,l;
    vi re(4,0);
    vi le(4,0);
    while(cin>>r>>l){
    if(r>=1.1)re[0]++;
    else if(r>=0.6)re[1]++;
    else if(r>=0.2)re[2]++;
    else if(r>=0)re[3]++;

    if(l>=1.1)le[0]++;
    else if(l>=0.6)le[1]++;
    else if(l>=0.2)le[2]++;
    else if(l>=0)le[3]++;


  }
  
  rep(i,4)
    cout<<re[i]<<" "<<le[i]<<endl;

}

C++: #include<iostream>
#include<cstring>
#include<algorithm>
#include<vector>
#include<cstdio>
#include<cmath>
#define pb(in,tmp) in.push_back(tmp)
#define loop(i,a,b) for(int i=a;i<b;i++)
#define rep(i,b) loop(i,0,b)
#define all(in) in.begin(),in.end()
using namespace std;
int main(){
double in;
int a[4]={0},b[4]={0};
while(cin>>in){
if(in>=1.1)a[0]++;
else if(in>=0.6)a[1]++;
else if(in>=0.2)a[2]++;
else a[3]++;
cin>>in;
if(in>=1.1)b[0]++;
else if(in>=0.6)b[1]++;
else if(in>=0.2)b[2]++;
else b[3]++;
}
rep(i,4)cout<<a[i]<<" "<<b[i]<<endl;
}

C++: #include<iostream>
using namespace std;

int EyeTest(float num){
	if(1.1 <= num) return 0;
	else if(0.6 <= num) return 1;
	else if(0.2 <= num) return 2;
	else return 3;
}

int main(){
	float n, m;
	int ans[2][4];
	for(int i=0; i < 2; i++){
		for(int j=0; j < 4; j++) ans[i][j] = 0;
	}
	while(cin >> n >> m){
		ans[0][EyeTest(n)]++;
		ans[1][EyeTest(m)]++;
	}
	for(int i=0; i < 4; i++){
		cout << ans[0][i] << ' ' << ans[1][i] << endl;
	}
}

C++: #include<stdio.h>

int main(){
int N1=0,N2=0,M1=0,M2=0;
int A[5]={},B[5]={};

while(scanf("%d.%d %d.%d",&N1,&N2,&M1,&M2)!=EOF)
{
if(N1>=2)A[0]++;
else if(N1==1&&N2>=1)A[0]++;
else if(N1==1&&N2<1)A[1]++;
else if(N1==0&&N2>=6)A[1]++;
else if(N1==0&&N2>=2)A[2]++;
else if(N1==0&&N2<2)A[3]++;

if(M1>=2)B[0]++;
else if(M1==1&&M2>=1)B[0]++;
else if(M1==1&&M2<1)B[1]++;
else if(M1==0&&M2>=6)B[1]++;
else if(M1==0&&M2>=2)B[2]++;
else if(M1==0&&M2<2)B[3]++;
}
for(int i=0;i<4;i++)
printf("%d %d\n",A[i],B[i]);


return 0;
}

C++: #include<iostream>
using namespace std;

int main() {
	double l, r;
	int a = 0, b = 0, c = 0, d = 0, e = 0, f = 0, g = 0, h = 0;
	while (cin >> l >> r) {
		if (l >= 1.1) { a++; }
		else if (l >= 0.6&&1.1 > l) { c++; }
		else if (l >= 0.2&&0.6 > l) { e++; }
		else if(0.2>l){ g++; }

		if (r >= 1.1) { b++; }
		else if (r >= 0.6&&1.1 > r) { d++; }
		else if (l >= 0.2&&0.6 > r) { f++; }
		else if(0.2>r) { h++; }
	}
	cout << a << " " << b <<'\n'<< c << " " << d << '\n' << e << " " << f <<'\n'
		<<g << " " << h ; 
		return 0;
}

C++: #include<bits/stdc++.h>
using namespace std;

int main(){
	double l, r;
	int la=0,lb=0,lc=0,ld=0;
	int ra=0,rb=0,rc=0,rd=0;
	while(cin >> l >> r){
		if(l >= 1.1){
			la++;
		}
		else if(l >= 0.6){
			lb++;
		}
		else if(l >= 0.2){
			lc++;
		}
		else{
			ld++;
		}

		if(r >= 1.1){
			ra++;
		}
		else if(r >= 0.6){
			rb++;
		}
		else if(r >= 0.2){
			rc++;
		}
		else{
			rd++;
		}
	}
	cout << la << " " << ra << endl;
	cout << lb << " " << rb << endl;
	cout << lc << " " << rc << endl;
	cout << ld << " " << rd << endl;
}

C++: #include<stdio.h>
int main(void)
{
	double h,m;
	int cMA,cHA;
	int cMB,cHB;
	int cMC,cHC;
	int cMD,cHD;
	cMA=0;
	cHA=0;
	cMB=0;
	cHB=0;
	cMC=0;
	cHC=0;
	cMD=0;
	cHD=0;
		while(scanf("%lf %lf",&h,&m)!=EOF){
			if(h>=1.1){
				cHA++;
			}
			else if(0.6<=h && h<1.1){
				cHB++;
			}
			else if(0.2<=h && h<0.6){
				cHC++;
			}
			else if(0.2<h){
				cHD++;
			}
			if(m>=1.1){
				cMA++;
			}
			else if(0.6<=m && m<1.1){
				cMB++;
			}
			else if(0.2<=m && m<0.6){
				cMC++;
			}
			else if(0.2<m){
				cMD++;
			}
		}
	printf("%d %d\n%d %d\n%d %d\n%d %d\n",cHA,cMA,cHB,cMB,cHC,cMC,cHD,cMD);
	return 0;
}