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 a[8]={0},i;
	double l,r;
	while(scanf("%lf%lf",&l,&r)>0)
	{
		if(l>=1.1)a[0]++;
		else if(l>=0.6)a[2]++;
		else if(l>=0.2)a[4]++;
		else a[6]++;
		if(r>=1.1)a[1]++;
		else if(r>=0.6)a[3]++;
		else if(r>=0.2)a[5]++;
		else a[7]++;
	}
	for(i=0;i<8;i+=2)
		printf("%d %d\n",a[i],a[i+1]);
	return 0;
}

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

int main(){
  vector<int> r(4),l(4);
  for(double a,b;(cin>>a>>b);){
    if(a<0.2){
      r[3]++;
    }else if(a<0.6){
      r[2]++;
    }else if(a<1.1){
      r[1]++;
    }else{
      r[0]++;
    }
    if(b<0.2){
      l[3]++;
    }else if(b<0.6){
      l[2]++;
    }else if(b<1.1){
      l[1]++;
    }else{
      l[0]++;
    }
  }
  for(int i=0;i<r.size();i++){
    cout<<r[i]<<" "<<l[i]<<endl;
  }
}

C++: #include <iostream>
using namespace std;
#define rep2(x,from,to) for(int x=(from);x<(to);++(x))
#define rep(x,to) rep2(x,0,to)
int main() {
	double a,b,c[] = {0.2, 0.6, 1.1};
	int l[4]= {}, r[4] = {};
	while(cin >> a >> b) {
		bool fa = 1, fb = 1;
		rep(i,4) {
			if(c[i]>a && fa) {
				l[i]++;
				fa = 0;
			}
			if(c[i]>b && fb) {
				r[i]++;
				fb = 0;
			}
		}
		if(fa) l[3]++;
		if(fb) r[3]++;
	}
	rep(i,4) {
		cout << l[3-i] << " " << r[3-i] << endl;
	}
	return 0;
}

C++: #include<cstdio>
#include<algorithm>
#include<iostream>
using namespace std;
int main()
{
    double a,b;
    int a1=0,a2=0,b1=0,b2=0,c1=0,c2=0,d1=0,d2=0;
    while(cin>>a>>b)
    {
        if(a<0.2)d1++;
        else if(0.2<=a&&a<0.6)c1++;
        else if(0.6<=a&&a<1.1)b1++;
        else if(1.1<a)a1++;
        if(b<0.2)d2++;
        else if(0.2<=b&&b<0.6)c2++;
        else if(0.6<=b&&b<1.1)b2++;
        else if(1.1<b)a2++;
    }
    cout<<a1<<" "<<a2<<endl;
    cout<<b1<<" "<<b2<<endl;
    cout<<c1<<" "<<c2<<endl;
    cout<<d1<<" "<<d2<<endl;
    return 0;
}

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

int main(){
	double ln,rn;
	int la=0,ra=0,lb=0,rb=0,lc=0,rc=0,ld=0,rd=0;
	while(cin >> ln >> rn){
		if(ln >= 1.1) la++;
		else if(ln >= 0.6) lb++;
		else if(ln >= 0.2) lc++;
		else ld++;
		if(rn >= 1.1) ra++;
		else if(rn >= 0.6) rb++;
		else if(rn >= 0.2) rc++;
		else rd++;
	}
	cout << la << " " << ra << endl;
	cout << lb << " " << rb << endl;
	cout << lc << " " << rc << endl;
	cout << ld << " " << rd << endl;
	return 0;
}

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

typedef long long int ll;
typedef pair<int, int> pii;
typedef vector<int> vi;
typedef vector<pair<int, int> > vii;
#define rrep(i, m, n) for(int (i)=(m); (i)<(n);  (i)++)
#define erep(i, m, n) for(int (i)=(m); (i)<=(n); (i)++)
#define  rep(i, n)    for(int (i)=0; (i)<(n);  (i)++)
#define rrev(i, m, n) for(int (i)=(n)-1; (i)>=(m); (i)--)
#define erev(i, m, n) for(int (i)=(n); (i)>=(m); (i)--)
#define  rev(i, n)    for(int (i)=(n)-1; (i)>=0; (i)--)
#define vrep(i, c)    for(__typeof((c).begin())i=(c).begin(); i!=(c).end(); i++)
#define  ALL(v)       (v).begin(), (v).end()
#define mp            make_pair
#define pb            push_back
template<class T, class S> inline bool minup(T& m, S x){ return m>(T)x ? (m=(T)x, true) : false; }
template<class T, class S> inline bool maxup(T& m, S x){ return m<(T)x ? (m=(T)x, true) : false; }

const int    INF = 1000000000;
const ll     MOD = 1000000007LL;
const double EPS = 1E-12;

double e[2];
double res[4][2];

int main()
{
  while(cin >> e[0] >> e[1]){
    rep(i, 2){
      if(e[i] >= 1.1) res[0][i] += 1;
      else if(e[i] >= 0.6 && e[i] < 1.1) res[1][i] += 1;
      else if(e[i] >= 0.2 && e[i] < 0.6) res[2][i] += 1;
      else res[3][i] += 1;
    }
  }

  rep(i, 4) cout << res[i][0] << ' ' << res[i][1] << endl;

  return 0;
}

C++: #include <iostream>
using namespace std;
int main()
{
	int a = 0, b = 0, c = 0, d = 0, A = 0, B = 0, C = 0, D = 0;
	double tmp, tmp2;
	while (cin >> tmp >> tmp2)
	{
		if (tmp >= 1.1)
			a++;
		else if (0.6 <= tmp < 1.1)
			b++;
		else if (0.2 <= tmp < 0.6)
			c++;
		else if (tmp < 0.2)
			d++;

		if (tmp2 >= 1.1)
			A++;
		else if (0.6 <= tmp2 < 1.1)
			B++;
		else if (0.2 <= tmp2 < 0.6)
			C++;
		else if (tmp2 < 0.2)
			D++;
	}
	cout << a << " " << A << endl << b << " " << B << endl << c << " " << C << endl << d << " " << D << endl;
}

C++: main(){int l[4][2]={0},i;float a;for(i=0;scanf("%f",&a)+1;i++)a<0.2?l[3][i%2]++:(a<0.6?l[2][i%2]++:(a<1.1?l[1][i%2]++:l[0][i%2]++));for(i=0;i<4;)printf("%d %d\n",l[i++][0],l[i][1]);}

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

typedef long long ll;
typedef pair<int, int> P;

#define pb push_back
#define rep(i, a, n) for(int i = (a); i < (n); i++)
#define dep(i, a, n) for(int i = (a); i >= (n); i--)
#define mod 1e9+7

__attribute__((constructor))
void initial() {
  cin.tie(0);
  ios::sync_with_stdio(false);
}

int main() {
  double a, b;
  int ar = 0, al = 0, br = 0, bl = 0, cr = 0, cl = 0, dr = 0, dl = 0;
  while(cin >> a >> b) {
    if(a >= 1.1) al++;
    else if(a >= 0.6) bl++;
    else if(a >= 0.2) cl++;
    else dl++;
    if(b >= 1.1) ar++;
    else if(b >= 0.6) br++;
    else if(b >= 0.2) cr++;
    else dr++;
  }

  cout << al << " " << ar << endl;
  cout << bl << " " << br << endl;
  cout << cl << " " << cr << endl;
  cout << dl << " " << dr << endl;

}

C++: #include <iostream>
using namespace std;
int a[4], b[4];
int main()
{
    double l, r;
    while (cin >> l >> r) {
        if (l >= 1.1) a[0]++;
        else if (l >= 0.6) a[1]++;
        else if (l >= 0.2) a[2]++;
        else a[3]++;
        if (r >= 1.1) b[0]++;
        else if (r >= 0.6) b[1]++;
        else if (r >= 0.2) b[2]++;
        else b[3]++;
    }
    for (int i=0; i<4; ++i) cout << l << " " << r << endl;
    return 0;
}

C++: main(i){int l[4][2]={0};float a;for(i=0;scanf("%f",&a)+1;i++)a<0.2?l[3][i%2]++:(a<0.6?l[2][i%2]++:(a<1.1?l[1][i%2]++:l[0][i%2]++));for(i=0;i<4;)printf("%d %d\n",l[i++][0],l[i][1]);}

C++: #include <cstdio>
int et[2][4] = {0};

void etest(int eangle,float epower){
	if(epower >= 1.1){
		et[eangle][0]++;
	}
	else if(epower >= 0.6 && epower < 1.1){
		et[eangle][1]++;
	}
	else if(epower >= 0.2 && epower < 0.6){
		et[eangle][2]++;
	}
	else{
		et[eangle][3]++;
	}
	return ;
}

int main(){
	float l,r;
	while(scanf("%f%f",&l,&r)){
		if(!l)break;
		etest(0,l),etest(1,r);
	}
	for(int i=0;i<4;i++){
		printf("%d %d\n",et[0][i],et[1][i]);
	}
}

C++: #include<iostream>
using namespace std;
int main(){
long aa[4]={0},bb[4]={0},i;
double a,b;
while(cin>>a){
cin>>b;
if(a>=1.1)aa[0]++;
else if(a>=0.6)aa[1]++;
else if(a>=0.2)aa[2]++;
else aa[3]++;
if(b>=1.1)bb[0]++;
else if(b>=0.6)bb[1]++;
else if(b>=0.2)bb[2]++;
else bb[3]++;
}
for(i=0;i<4;i++){
cout<<aa[i]<<" "<<bb[i]<<endl;
}
return 0;
}