#include <iostream>
#include <utility>
#include <vector>
#include <algorithm>
using namespace std;
#define P pair<int,int>

bool cmp(P p,P q){
  if( p.first > q.first ) return true;
  if( p.first < q.first ) return false;
  if( p.second < q.second ) return true;
  return false;
}

int main(){
  int m;

  while( cin>>m && m ){
    vector<int> v;
    vector<P> s;
    P p; // 得点、学籍番号
    //    cout << "m="<< m << endl; // **********************

    for( int lp=0;lp<m;lp++ ){
      cin >> p.second; // 学籍番号
      //      cout << " std"<<lp<<"="<<p.second << endl; //********
      v.clear();
      int n=9, a,b;
      while( n>0 ){ // 9投目まで
	cin >> a; v.push_back( a );
	if( a!=10 ){ cin >> a; v.push_back( a ); }
	n--;
      }
      //      cout << endl;

      // 10投目
      cin >> a >> b;
      v.push_back( a );      v.push_back( b );
      if( a+b>=10 ){  cin >> a; v.push_back( a ); }
      p.first = 0; // 得点
      n=0;
      for( int i=0,j;i<9;i++ ){
	j = v[n] + v[n+1];
	p.first += j;
	if( v[n]==10 ){ // strike
	  p.first += v[n+2];
	}else {
	  if( j==10 ) p.first += v[n+2];
	  n++;
	}
	n++;
      }
      while( n<(int)v.size() ) p.first += v[n++];

      //      cout << "  score="<<p.first << endl;
      s.push_back( p );
    }
    
    sort( s.begin(),s.end(), cmp );
      for( unsigned int i=0;i<s.size();i++ )
	cout << s[i].second << " " << s[i].first << endl;

  }
  return 0;
}