当前位置: 首页 > article >正文

【菜笔cf刷题日常-1400】C. RationalLee(贪心)

链接:Problem - 1369C - Codeforces

思路:当该人仅分配1个数时要选取当前最大数,使最大数可以被加2次;其余的按照分配数从大到小枚举,每次选取当前最大数,其他选取当前最小数。

code:

#include<bits/stdc++.h>
#define int long long
using namespace std;
int n,m,t,k,l,r,q,p,x,idx,res,cnt,sum,flag,maxx,minn;
const int N=200010;
const int MOD=1e9+7;
const int INF=0x3f3f3f3f3f3f3f3f;
int a[N],b[N];

signed main(){
	ios::sync_with_stdio(0);
	cin.tie(0),cout.tie(0);

	cin>>t;
	while(t--){
		cin>>n>>k;
		cnt=0;
		for(int i=0;i<n;i++){
			cin>>a[i];		
		} 
		for(int i=0;i<k;i++){
			cin>>b[i];
			if(b[i]==1){
				cnt++;
			}
		}
		sort(a,a+n);
		sort(b,b+k);
		reverse(b,b+k);
		sum=0;
		for(int i=n-1;i>n-1-cnt;i--){
			sum+=a[i]*2;
		}
		int l=0,r=n-1-cnt;
		for(int i=0;i<k-cnt;i++){
			sum+=a[r];
			sum+=a[l];
			r--;
			for(int j=0;j<b[i]-1;j++){
				l++;
			}
		}
		cout<<sum<<'\n';
	}

	return 0;
}



http://www.kler.cn/a/393112.html

相关文章:

  • React引入Echart水球图
  • 【MySQL】十三,关于MySQL的全文索引
  • 【QT开发自制小工具】PDF/图片转excel---调用百度OCR API接口
  • Linux的启动流程
  • MarkItDown的使用(将Word、Excel、PDF等转换为Markdown格式)
  • 【Leetcode】1705. 吃苹果的最大数目
  • 蓝桥杯每日真题 - 第11天
  • 轻松上手:使用Docker部署Java服务
  • openGauss常见问题与故障处理(四)
  • 量化交易系统开发-实时行情自动化交易-3.4.1.6.A股宏观经济数据
  • 边缘计算在工业互联网中的应用
  • SystemVerilog学习笔记(九):Schedule
  • Vue 生命周期函数
  • 可认证数据资产合约标准协议(CMIDA-1)意见征集
  • 06.VSCODE:备战大项目,CMake专项配置
  • PcVue + SQL Grid : 释放数据的无限潜力
  • 堆排序与链式二叉树:数据结构与排序算法的双重探索
  • 【STM32F1】——无线收发模块RF200与串口通信
  • 使用Java绘制图片边框,解决微信小程序map组件中marker与label层级关系问题,label增加外边框后显示不能置与marker上面
  • go reflect 反射
  • 若依笔记(八):芋道的Docker容器化部署
  • 什么是 ISP:了解互联网服务提供商的作用
  • Vue 3 在现代前端开发中的应用
  • 【大数据学习 | HBASE高级】hbase的参数优化
  • 【Linux】linux编辑器-vim的命令及配置
  • Qt_day5_常用类