import java.util.*; public class Main { public static void main(String[] args) { Scanner sc=new Scanner(System.in); int n=sc.nextInt(),m=sc.nextInt(); List<Map<String ,Integer>> l1=new ArrayList<>(); for (int i=1;i<=m;i++){ Map<String ,Integer> milk=new HashMap() ; milk.put("单价",sc.nextInt()); milk.put("数量",sc.nextInt()); l1.add(milk); } Collections.sort(l1, new Comparator<Map<String, Integer>>() { @Override public int compare(Map<String, Integer> o1, Map<String, Integer> o2) { return o1.get("单价")-o2.get("单价"); } }); int m1=0; // for (int i=0;i<l1.size();i++) { // System.out.println(l1.get(i)); // } for (int i=0;i<m;i++){ Map<String, Integer> shop = l1.get(i); if(shop.get("数量")>=n){ m1=m1+n*shop.get("单价"); n=0; break; }else { m1=m1+shop.get("数量")*shop.get("单价"); n=n-shop.get("数量");; } } System.out.println(m1); } } /************************************************************** Problem: 1940 User: admin Language: Java Result: Accepted Time:4429 ms Memory:54228 kb ****************************************************************/