#include<iostream>
#include<algorithm>
#include<string>
#include<map>
#include<vector>
using namespace std;
using ll=long long;

int main(){
	int d,g;
	int p[11],c[11];

	cin>>d>>g;
	for(int i=0;i<d;i++)cin>>p[i]>>c[i];

	int ans=1e6;
	for(int x=0;x<(1<<d);x++){ //ビット演算で2^dまで探索;
		int s=0,count=0,rest_max=-1,tmp=0;
		for(int y=0;y<d;y++){	//フラグがたった列をコンプリート;
			if(x>>y&1)s+=100*(y+1)*p[y]+c[y],count+=p[y];
			else rest_max=y;	//フラグがたたない最大の列を保存;
		}
		while(s<g&&tmp<p[rest_max])s+=100*(rest_max+1),tmp++;
		count+=tmp;
		if(s>=g)ans=min(ans,count);
	}
	cout<<ans;
}

		