#include<iostream>usingnamespace std;constint N=1e5+10;int n, m;int a[N], s[N];intmain(){scanf("%d%d",&n,&m);for(int i =1; i <= n; i++)scanf("%d",&a[i]);for(int i =1; i <= n; i++) s[i]= s[i -1]+ a[i];// 前i项的的和等于前i - 1项的和加第i项的和while(m--)//m个询问{int l,r;scanf("%d%d",&l,&r);//输入规模比较大,用scanf来输入,比cin快一倍printf("%d\n",s[r]- s[l -1]);}return0;}
#include<iostream>#include<cstdio>#include<algorithm>#include<cstdlib>#include<memory.h>#include<cstring>#defineMAX0xFFFFFFFusingnamespace std;double prices[60];int k;double q;double total;double ans;voiddfs(int index){if(total>ans)
ans = total;if(index==k)return;if(total+prices[index]<=q){
total += prices[index];dfs(index+1);
total -= prices[index];}dfs(index+1);}intmain(){//freopen("in.txt", "r", stdin);double price;char ch;int n, m;bool flag;while(scanf("%lf%d",&q,&n)!=EOF, n){
k=0;for(int i=0;i<n;++i){scanf("%d",&m);double sum =0.0;
flag =false;while(m--){scanf(" %c:%lf",&ch,&price);//spaceif(price>600||!(ch=='A'|| ch=='B'|| ch=='C'))
flag =true;
sum += price;}if(flag || sum>1000)continue;
prices[k++]= sum;}
total =0;
ans =0;dfs(0);printf("%.2lf\n", ans);}//fclose(stdin);}