#include<stdio.h>#include<algorithm>usingnamespace std;struct mooncake{double store;double sell;double price;}cake[1010];boolcmp(mooncake a,mooncake b){return a.price > b.price;}intmain(){int n;double D;scanf("%d%lf",&n,&D);for(int i =0;i<n;i++)scanf("%lf",&cake[i].store);for(int i =0;i<n;i++){scanf("%lf",&cake[i].sell);
cake[i].price = cake[i].sell/cake[i].store;}sort(cake,cake+n,cmp);double ans =0;for(int i =0;i<n;i++){if(cake[i].store<=D){
D-=cake[i].store;
ans+=cake[i].sell;}else{
ans+= cake[i].price*D;break;}}printf("%.2f",ans);return0;}
3.B1026
#include<stdio.h>intmain(){int c1,c2;scanf("%d%d",&c1,&c2);int ans = c2 - c1;if(ans%100>=50)
ans = ans/100+1;else
ans = ans /100;printf("%02d:%02d:%02d\n",ans/3600,ans%3600/60,ans%60);return0;}
4.B1032
#include<stdio.h>constint max =100010;int school[max]={0};intmain(){int n,num,score;scanf("%d",&n);for(int i =0;i<n;i++){scanf("%d%d",&num,&score);
school[num]+=score;}int k =1,MAX =-1;for(int i =1;i<=n;i++){if(MAX<school[i]){
MAX = school[i];
k = i;}}printf("%d %d",k,MAX);return0;}
5.B1040 A1093
#include<stdio.h>#include<string.h>constint MAXN =100010;constint MOD =1000000007;char str[MAXN];int leftNumP[MAXN]={0};intmain(){gets(str);int len =strlen(str);for(int i=0;i<len;i++){if(i>0)
leftNumP[i]= leftNumP[i-1];if(str[i]=='P')
leftNumP[i]++;}int ans =0,rightNumT =0;for(int i=len-1;i>=0;i--){if(str[i]=='T')
rightNumT++;elseif(str[i]=='A')
ans =(ans + leftNumP[i]* rightNumT)% MOD;}printf("%d\n",ans);return0;}