蓝桥杯刷题十二
创始人
2025-05-28 21:11:37
  1. 付账问题

当a[i]带的钱够s/n时,就给s/n 不够就给a[i] 然后剩下的就均摊给钱多的

#include 
using namespace std;
const int N=5e5+10;
int a[N];
int main()
{int n;long double s;cin>>n>>s;for(int i=0;i>a[i];sort(a,a+n);long double res=0,avg=s/n;for(int i=0;i

2.乘积最大

如果要选的是n==k 那么就只能全选咯

要考虑的是k

如果k是偶数 那么一定可以选出正数

(1)如果负数是偶数个 那么得出来的肯定是非负数。

(2)如果负数是奇数个

奇数的话 如果全是负数 只能选绝对值最小的数

有一个非负数 然后就可以k-- 就转换为k为偶数了

#include 
using namespace std;
typedef long long ll;
const int N=100010,mod=1000000009;
int a[N];
int main()
{int n,k;cin>>n>>k;for(int i=0;i>a[i];sort(a,a+n);int res=1,l=0,r=n-1,sign=1;if(k%2){res=a[r--];k--;if(res<0) sign=-1;}while(k){ll x=(ll)a[l]*a[l+1],y=(ll)a[r]*a[r-1];if(x*sign>y*sign){res=x%mod*res%mod;l+=2;}else{res=y%mod*res%mod;r-=2;}k-=2;}cout<

3.倍数问题

背包问题

三维dp

但是要优化 优化第一维 因为是选三个数 而在选数的时候数的本身是不重要的,重要的是数模k以后的值,而这些不同的模数我只需要每个保留三个就行了

#include 
using namespace std;
const int N=1010,INF=0x3f3f3f3f;
int f[4][N];
vector a[N];
int main()
{int n,m;cin>>n>>m;for(int i=0;i>x;a[x%m].push_back(x);}memset(f,-0x3f,sizeof f);f[0][0]=0;for(int i=0;i());for(int u=0;u<3&&u=1;j--){for(int k=0;k
  1. 雷达设备 我一开始的思路是,对所有点排序 然后求出圆表达式 循环去遍历所有的点,如果这个圆不包含这个点就要去弄一个新的圆去包含这个点。

但是看了y总的思路真的奇妙,把二维问题转换为了区间问题。

#include 
using namespace std;
typedef pair PDD;
const int N=1010;
const double eps=1e-6,INF=1e10;
int n,d;
PDD seg[N];
int main()
{cin>>n>>d;bool success=true;for(int i=0;i>x>>y;if(y>d){success=false;}auto len=sqrt(d*d-y*y);seg[i]={x+len,x-len};}if(!success) puts("-1");else{sort(seg,seg+n);int res=0;double last=-INF;for(int i=0;ilast+eps){res++;last=seg[i].first;}}cout<

4.后缀表达式

#include 
#include 
#include using namespace std;typedef long long LL;const int N = 2e5 + 10;int a[N];int main() {int n, m;  scanf("%d%d", &n, &m);int k = n + m + 1;for (int i = 0; i < k; i ++)  scanf("%d", &a[i]);LL res = 0;if (!m)  for (int i = 0; i < k; i ++)  res += a[i];else {sort(a, a + k);res = a[k - 1] - a[0];for (int i = 1; i < k - 1; i ++)  res += abs(a[i]);}return printf("%lld\n", res), 0;
}

相关内容

热门资讯

今年我省粮食产量达515.56... (来源:辽宁日报)转自:辽宁日报 图为在中储粮(盘锦)储运有限公司,装运粮食的重型卡车排起长队...
国家发展改革委部署促进投资止跌... (来源:辽宁日报)转自:辽宁日报 新华社北京12月13日电 (记者魏玉坤) 记者13日从全国发展和改...
江苏省实施《中华人民共和国森林... (来源:新华日报) 目 录 第一章 总则 第二章 森林、林木和林地权属管理...
姜堰数字化产品讲“活”理论 (来源:新华日报) □ 本报记者 卢佳乐 通讯员 姜宣 “王教授,您约我‘喝茶论道’,...
联合国维和部队在苏丹遇袭 6人... 转自:财联社【联合国维和部队在苏丹遇袭 6人死亡】财联社12月14日电,当地时间13日,苏丹武装部队...