N=int(input()) P=[list(map(int,input().split())) for i in range(N)] P.sort(key=lambda x:x[0]) P.sort(key=lambda x:x[1],reverse=True) DP=[P[i][0] for i in range(N)] for i in range(1,N): if DP[i]>DP[i-1]: DP[i]=DP[i-1] #print(DP) if N%3==0: days=N*2//3 elif N%3==1: days=(N-1)*2//3+1 else: days=(N+1)*2//3 for i in range(1,days): NDP=[10**15]*N for j in range(1,N): NDP[j]=min(DP[j-1]+(P[j][0]+P[j][1]*i),NDP[j-1]) #print(DP[j-1]+(P[j][0]+P[j][1]*i),NDP[j-1]) DP=NDP #print(DP) print(min(DP))