比赛 20131207 评测结果 WAAAWWWWWWWAA
题目名称 不设找零 最终得分 38
用户昵称 Strawberry 运行时间 0.054 s
代码语言 C++ 内存使用 0.31 MiB
提交时间 2013-12-07 16:07:08
显示代码纯文本
#include<fstream>
#include<algorithm>
using namespace std;
ifstream fi("nochange.in");
ofstream fo("nochange.out");
int coin[16]={0},shop;
long long money=0,cost=0;
int N,K;
int i1;
int main(){
	fi>>K>>N;
	for(int i=0;i<K;i++){
		fi>>coin[i];
		money+=coin[i];
	}
	for(int i=0;i<N;i++){
		fi>>shop;
		cost+=shop;
	}
	if(money<cost){
		fo<<-1<<endl;
		return 0;
	}
	if(money==cost){
		fo<<0<<endl;
		return 0;
	}
	sort(coin,coin+K);
	money=0;
	for(int i=0;i<K;i++){
		if(money>=cost){
			i1=i;
			break;
		}
		money+=coin[i];
		if(money>=cost){
			i1=i++;
			break;
		}
	}
	money=0;
	for(int j=i1;j<K;j++){
		money+=coin[j];
	}
	fo<<money<<endl;
	return 0;
}