/**


太郎と花子がカードゲームをする。二人はそれぞれn枚のカードを持っており、nターンの勝負を行う。
各ターンではそれぞれ１枚ずつカードを出す。カードにはアルファベットからなる動物の名前が書かれており
辞書順で大きいものがそのターンの勝者となる。
勝者には３ポイント、引き分けの場合にはそれぞれ１ポイントが加算される。
太郎と花子の手持ちのカードの情報を読み込み、ゲーム終了後のそれぞれの得点を出力するプログラムを作成せよ。

 */

//スキャナつかうため

import java.util.Scanner;

public class Main {
	// プログラムのエントリポイント
	public static void main(String[] args) {
		// 入力ストリームの生成

		Scanner sc = new Scanner(System.in);
		//ターン数を受け取る
		int intTrun = sc.nextInt();
		//受け取る文字、保持するポイントの変数宣言
		String Hanaco;
		String Taro;
		int intHanacop = 0;
		int intTarop = 0;
		//ターンの数だけ処理を繰り返す
		for (int i = 0; i < intTrun; i++) {
			//数値を受け取る
			Taro = sc.next();
			Hanaco = sc.next();

			// System.out.println(Taro + Hanaco + intHanacop);
			//文字列TaroがHanacoより辞書順で早い場合
			if (Taro.compareToIgnoreCase(Hanaco) > 0) {
				intTarop += 3;
			//文字列TaroがHanacoより辞書順で遅い場合
			}else if (Taro.compareToIgnoreCase(Hanaco) < 0 ){
				intHanacop += 3;
			//文字列TaroとHanacoが同じ文字列の場合
			}else if (Taro.compareToIgnoreCase(Hanaco) == 0){
				intTarop ++;
				intHanacop ++;
			}

		}
		//結果表示
		System.out.println( intTarop + " " + intHanacop);
	}
} import java.util.Scanner; Scanner java.util public class Main {
	// プログラムのエントリポイント
	public static void main(String[] args) {
		// 入力ストリームの生成

		Scanner sc = new Scanner(System.in);
		//ターン数を受け取る
		int intTrun = sc.nextInt();
		//受け取る文字、保持するポイントの変数宣言
		String Hanaco;
		String Taro;
		int intHanacop = 0;
		int intTarop = 0;
		//ターンの数だけ処理を繰り返す
		for (int i = 0; i < intTrun; i++) {
			//数値を受け取る
			Taro = sc.next();
			Hanaco = sc.next();

			// System.out.println(Taro + Hanaco + intHanacop);
			//文字列TaroがHanacoより辞書順で早い場合
			if (Taro.compareToIgnoreCase(Hanaco) > 0) {
				intTarop += 3;
			//文字列TaroがHanacoより辞書順で遅い場合
			}else if (Taro.compareToIgnoreCase(Hanaco) < 0 ){
				intHanacop += 3;
			//文字列TaroとHanacoが同じ文字列の場合
			}else if (Taro.compareToIgnoreCase(Hanaco) == 0){
				intTarop ++;
				intHanacop ++;
			}

		}
		//結果表示
		System.out.println( intTarop + " " + intHanacop);
	}
} Main // プログラムのエントリポイント
	public static void main(String[] args) {
		// 入力ストリームの生成

		Scanner sc = new Scanner(System.in);
		//ターン数を受け取る
		int intTrun = sc.nextInt();
		//受け取る文字、保持するポイントの変数宣言
		String Hanaco;
		String Taro;
		int intHanacop = 0;
		int intTarop = 0;
		//ターンの数だけ処理を繰り返す
		for (int i = 0; i < intTrun; i++) {
			//数値を受け取る
			Taro = sc.next();
			Hanaco = sc.next();

			// System.out.println(Taro + Hanaco + intHanacop);
			//文字列TaroがHanacoより辞書順で早い場合
			if (Taro.compareToIgnoreCase(Hanaco) > 0) {
				intTarop += 3;
			//文字列TaroがHanacoより辞書順で遅い場合
			}else if (Taro.compareToIgnoreCase(Hanaco) < 0 ){
				intHanacop += 3;
			//文字列TaroとHanacoが同じ文字列の場合
			}else if (Taro.compareToIgnoreCase(Hanaco) == 0){
				intTarop ++;
				intHanacop ++;
			}

		}
		//結果表示
		System.out.println( intTarop + " " + intHanacop);
	} main {
		// 入力ストリームの生成

		Scanner sc = new Scanner(System.in);
		//ターン数を受け取る
		int intTrun = sc.nextInt();
		//受け取る文字、保持するポイントの変数宣言
		String Hanaco;
		String Taro;
		int intHanacop = 0;
		int intTarop = 0;
		//ターンの数だけ処理を繰り返す
		for (int i = 0; i < intTrun; i++) {
			//数値を受け取る
			Taro = sc.next();
			Hanaco = sc.next();

			// System.out.println(Taro + Hanaco + intHanacop);
			//文字列TaroがHanacoより辞書順で早い場合
			if (Taro.compareToIgnoreCase(Hanaco) > 0) {
				intTarop += 3;
			//文字列TaroがHanacoより辞書順で遅い場合
			}else if (Taro.compareToIgnoreCase(Hanaco) < 0 ){
				intHanacop += 3;
			//文字列TaroとHanacoが同じ文字列の場合
			}else if (Taro.compareToIgnoreCase(Hanaco) == 0){
				intTarop ++;
				intHanacop ++;
			}

		}
		//結果表示
		System.out.println( intTarop + " " + intHanacop);
	} Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int intTrun = sc.nextInt(); intTrun sc.nextInt() sc.nextInt sc String Hanaco; Hanaco String Taro; Taro int intHanacop = 0; intHanacop 0 int intTarop = 0; intTarop 0 for (int i = 0; i < intTrun; i++) {
			//数値を受け取る
			Taro = sc.next();
			Hanaco = sc.next();

			// System.out.println(Taro + Hanaco + intHanacop);
			//文字列TaroがHanacoより辞書順で早い場合
			if (Taro.compareToIgnoreCase(Hanaco) > 0) {
				intTarop += 3;
			//文字列TaroがHanacoより辞書順で遅い場合
			}else if (Taro.compareToIgnoreCase(Hanaco) < 0 ){
				intHanacop += 3;
			//文字列TaroとHanacoが同じ文字列の場合
			}else if (Taro.compareToIgnoreCase(Hanaco) == 0){
				intTarop ++;
				intHanacop ++;
			}

		} int i = 0; int i = 0; i 0 i < intTrun i intTrun i++ i++ i {
			//数値を受け取る
			Taro = sc.next();
			Hanaco = sc.next();

			// System.out.println(Taro + Hanaco + intHanacop);
			//文字列TaroがHanacoより辞書順で早い場合
			if (Taro.compareToIgnoreCase(Hanaco) > 0) {
				intTarop += 3;
			//文字列TaroがHanacoより辞書順で遅い場合
			}else if (Taro.compareToIgnoreCase(Hanaco) < 0 ){
				intHanacop += 3;
			//文字列TaroとHanacoが同じ文字列の場合
			}else if (Taro.compareToIgnoreCase(Hanaco) == 0){
				intTarop ++;
				intHanacop ++;
			}

		} {
			//数値を受け取る
			Taro = sc.next();
			Hanaco = sc.next();

			// System.out.println(Taro + Hanaco + intHanacop);
			//文字列TaroがHanacoより辞書順で早い場合
			if (Taro.compareToIgnoreCase(Hanaco) > 0) {
				intTarop += 3;
			//文字列TaroがHanacoより辞書順で遅い場合
			}else if (Taro.compareToIgnoreCase(Hanaco) < 0 ){
				intHanacop += 3;
			//文字列TaroとHanacoが同じ文字列の場合
			}else if (Taro.compareToIgnoreCase(Hanaco) == 0){
				intTarop ++;
				intHanacop ++;
			}

		} Taro = sc.next() Taro sc.next() sc.next sc Hanaco = sc.next() Hanaco sc.next() sc.next sc if (Taro.compareToIgnoreCase(Hanaco) > 0) {
				intTarop += 3;
			//文字列TaroがHanacoより辞書順で遅い場合
			}else if (Taro.compareToIgnoreCase(Hanaco) < 0 ){
				intHanacop += 3;
			//文字列TaroとHanacoが同じ文字列の場合
			}else if (Taro.compareToIgnoreCase(Hanaco) == 0){
				intTarop ++;
				intHanacop ++;
			} Taro.compareToIgnoreCase(Hanaco) > 0 Taro.compareToIgnoreCase(Hanaco) Taro.compareToIgnoreCase Taro Hanaco 0 {
				intTarop += 3;
			//文字列TaroがHanacoより辞書順で遅い場合
			} intTarop += 3 intTarop 3 if (Taro.compareToIgnoreCase(Hanaco) < 0 ){
				intHanacop += 3;
			//文字列TaroとHanacoが同じ文字列の場合
			}else if (Taro.compareToIgnoreCase(Hanaco) == 0){
				intTarop ++;
				intHanacop ++;
			} Taro.compareToIgnoreCase(Hanaco) < 0 Taro.compareToIgnoreCase(Hanaco) Taro.compareToIgnoreCase Taro Hanaco 0 {
				intHanacop += 3;
			//文字列TaroとHanacoが同じ文字列の場合
			} intHanacop += 3 intHanacop 3 if (Taro.compareToIgnoreCase(Hanaco) == 0){
				intTarop ++;
				intHanacop ++;
			} Taro.compareToIgnoreCase(Hanaco) == 0 Taro.compareToIgnoreCase(Hanaco) Taro.compareToIgnoreCase Taro Hanaco 0 {
				intTarop ++;
				intHanacop ++;
			} intTarop ++ intTarop intHanacop ++ intHanacop System.out.println( intTarop + " " + intHanacop) System.out.println System.out System System.out intTarop + " " + intHanacop intTarop + " " + intHanacop intTarop " " intHanacop String[] args args public class Main {
	// プログラムのエントリポイント
	public static void main(String[] args) {
		// 入力ストリームの生成

		Scanner sc = new Scanner(System.in);
		//ターン数を受け取る
		int intTrun = sc.nextInt();
		//受け取る文字、保持するポイントの変数宣言
		String Hanaco;
		String Taro;
		int intHanacop = 0;
		int intTarop = 0;
		//ターンの数だけ処理を繰り返す
		for (int i = 0; i < intTrun; i++) {
			//数値を受け取る
			Taro = sc.next();
			Hanaco = sc.next();

			// System.out.println(Taro + Hanaco + intHanacop);
			//文字列TaroがHanacoより辞書順で早い場合
			if (Taro.compareToIgnoreCase(Hanaco) > 0) {
				intTarop += 3;
			//文字列TaroがHanacoより辞書順で遅い場合
			}else if (Taro.compareToIgnoreCase(Hanaco) < 0 ){
				intHanacop += 3;
			//文字列TaroとHanacoが同じ文字列の場合
			}else if (Taro.compareToIgnoreCase(Hanaco) == 0){
				intTarop ++;
				intHanacop ++;
			}

		}
		//結果表示
		System.out.println( intTarop + " " + intHanacop);
	}
} public class Main {
	// プログラムのエントリポイント
	public static void main(String[] args) {
		// 入力ストリームの生成

		Scanner sc = new Scanner(System.in);
		//ターン数を受け取る
		int intTrun = sc.nextInt();
		//受け取る文字、保持するポイントの変数宣言
		String Hanaco;
		String Taro;
		int intHanacop = 0;
		int intTarop = 0;
		//ターンの数だけ処理を繰り返す
		for (int i = 0; i < intTrun; i++) {
			//数値を受け取る
			Taro = sc.next();
			Hanaco = sc.next();

			// System.out.println(Taro + Hanaco + intHanacop);
			//文字列TaroがHanacoより辞書順で早い場合
			if (Taro.compareToIgnoreCase(Hanaco) > 0) {
				intTarop += 3;
			//文字列TaroがHanacoより辞書順で遅い場合
			}else if (Taro.compareToIgnoreCase(Hanaco) < 0 ){
				intHanacop += 3;
			//文字列TaroとHanacoが同じ文字列の場合
			}else if (Taro.compareToIgnoreCase(Hanaco) == 0){
				intTarop ++;
				intHanacop ++;
			}

		}
		//結果表示
		System.out.println( intTarop + " " + intHanacop);
	}
} Main
/**


太郎と花子がカードゲームをする。二人はそれぞれn枚のカードを持っており、nターンの勝負を行う。
各ターンではそれぞれ１枚ずつカードを出す。カードにはアルファベットからなる動物の名前が書かれており
辞書順で大きいものがそのターンの勝者となる。
勝者には３ポイント、引き分けの場合にはそれぞれ１ポイントが加算される。
太郎と花子の手持ちのカードの情報を読み込み、ゲーム終了後のそれぞれの得点を出力するプログラムを作成せよ。

 */

//スキャナつかうため

import java.util.Scanner;

public class Main {
	// プログラムのエントリポイント
	public static void main(String[] args) {
		// 入力ストリームの生成

		Scanner sc = new Scanner(System.in);
		//ターン数を受け取る
		int intTrun = sc.nextInt();
		//受け取る文字、保持するポイントの変数宣言
		String Hanaco;
		String Taro;
		int intHanacop = 0;
		int intTarop = 0;
		//ターンの数だけ処理を繰り返す
		for (int i = 0; i < intTrun; i++) {
			//数値を受け取る
			Taro = sc.next();
			Hanaco = sc.next();

			// System.out.println(Taro + Hanaco + intHanacop);
			//文字列TaroがHanacoより辞書順で早い場合
			if (Taro.compareToIgnoreCase(Hanaco) > 0) {
				intTarop += 3;
			//文字列TaroがHanacoより辞書順で遅い場合
			}else if (Taro.compareToIgnoreCase(Hanaco) < 0 ){
				intHanacop += 3;
			//文字列TaroとHanacoが同じ文字列の場合
			}else if (Taro.compareToIgnoreCase(Hanaco) == 0){
				intTarop ++;
				intHanacop ++;
			}

		}
		//結果表示
		System.out.println( intTarop + " " + intHanacop);
	}
}