首页 > 其他分享 >天梯选拔赛第一场

天梯选拔赛第一场

时间:2024-03-05 22:57:40浏览次数:18  
标签:const 天梯 int sum long 选拔赛 zz include 第一场

B 孵化小鸡 - SMUOJ

题解:因为数据很小我们可以枚举每一个状态然后判断一下是否可以达到孵化的温度即可

我们用二进制枚举,一共1<<m相当于2的m次方,用二进制枚举每一个状态

//#include <bits/stdc++.h>
//#pragma GCC optimize("Ofast")
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <queue>
#include <cmath>
//#define double long double
#define int long long
#define endl '\n'
using namespace std;
const int N=1e5,M=1e1;
const int INF = 0x3f3f3f3f;
const int mod=1e9+7;
typedef pair<int,int> PII;

int biao[N];
PII c[N];
int k[N];
int p[N];

void solve()
{
    int n,m;
    cin>>n>>m;
    int zz=0;
    for(int i=1;i<=n;i++)
    {
        int a,b,mi;
        cin>>a>>b>>mi;
        zz=max(zz,b);
        for(int j=a;j<=b;j++)
        {
            biao[j]=mi;
        }
    }
    for(int i=0;i<m;i++)
    {
        int l,r,ki,pi;
        cin>>l>>r>>ki>>pi;
        c[i]={l,r};
        k[i]=ki;
        p[i]=pi;
    }
    int ans=0;
    int sum=INF;
    for(int i=0;i<1<<m;i++)
    {
        ans=0;
        int op[N]={0};
       for(int j=0;j<m;j++)
       {
           if(i&1<<j)   //判断这一位是否是开启的状态
           {
               ans+=p[j];
               for(int ea=c[j].first;ea<=c[j].second;ea++)
               {
                   op[ea]+=k[j];
               }
           }
       }
       int f=0;
       for(int j=1;j<=zz;j++)
       {
           if(biao[j]==0) continue;
           else
           {

               if(biao[j]>op[j])
               {
                   f=1;
                   break;
               }
           }
       }
       if(!f)
       {
           sum=min(sum,ans);
       }
    }
    cout<<sum<<endl;
}
signed main(){
    std::ios::sync_with_stdio(false);
    std::cin.tie(nullptr);
    int T=1;
//    cin>>T;
    while(T--){
        solve();
    }
    return 0;
}

下面写另外一个暴力搜索的版本

 

标签:const,天梯,int,sum,long,选拔赛,zz,include,第一场
From: https://www.cnblogs.com/whatdo/p/18055472

相关文章

  • 程序设计天梯赛个人题解 L2-047-2 锦标赛
    题目分析综合题意,将最后一场比赛视为顶层,第一轮比赛视为第一层,则有:下层每场比赛选出一个胜者,每两个下层的胜者间举行本层的一次比赛,显然这是一个二叉树。考虑还原建立每场比赛的树。由于最后一层的比赛是$2^k$个选手参加,故这是个完美二叉树,使用完全二叉树的数组储存方式,则标号......
  • sc2 天梯地图
    没记错的话以前7张ban3张,非常合理,现在9张怎么还是ban3张好哥哥达蒙星际2教学Goldenauraban三四矿近,挂运输机的地方长,架坦克的点位多,ZvT打不了一点Equilibriumban莫名其妙Hecate不敲岩石的话中间的路很窄偏大,没有瞭望塔,难以控图(注意偷矿,多线)主矿下面、二三......
  • 牛客寒假训练赛第一场
    基本状况赛时开了五题,B题大分讨卡住了,其他题目就看了题面。有几个基本状况:贪心题没有深入思考,就无脑二分入手,倒是大量罚时。分讨思路不清楚。E题很搞,名字叫贪心题但是纯爆搜,爽切。Ahttps://ac.nowcoder.com/acm/contest/67741/A虽然签到题,但是学习一下jly写法。我......
  • (GPLT)上海理工大学校内选拔赛(重现赛)
    题目链接A.记录最大值和个数,和次大值遍历数组,不是最大值,输出该数与最大值的和是最大值,则讨论最大值个数,若只有一个,输出该数与次大值的和,否则输出最大值的两倍#include<bits/stdc++.h>usingnamespacestd;#defineintlonglongconstintN=1e5+10;voidsolve(){......
  • Intel 移动CPU天梯榜
    ......
  • 软件测试|华新学院在 2022 年全国大学生“火焰杯”软件测试高校就业选拔赛取得佳绩
    近期,华新学院信工学院在全国大学生“火焰杯”软件测试高校就业选拔赛中取得了杰出的成绩。该比赛共有全国146所高校的2180名学生参加,而我校共派出9名学生代表参赛。令人骄傲的是,其中的何奉莲、陆钇霖和徐忠豪三位同学成功闯过初赛,晋级总决赛。何奉莲同学在全国比赛中获得了令......
  • 计算机科学系举办“火焰杯”软件测试开发选拔赛颁奖仪式
    2023年3月9日,南海楼124会议室举行了第三届“火焰杯”软件测试开发选拔赛颁奖仪式。出席此次仪式的有计算机科学系系主任龙锦益教授、指导老师孙玉霞副教授、测吧科技有限公司的总监王雪冬,以及获奖的学生。仪式伊始,龙锦益教授热烈欢迎了王雪冬总监的到来,并对获奖学生的出色表......
  • 软件测试|第二届、第三届<火焰杯>软件测试开发选拔赛河北赛区颁奖典礼落幕
    3月25日下午,河北工程技术学院图书馆报告厅隆重举行了第二届和第三届“火焰杯”软件测试开发选拔赛河北赛区的颁奖典礼。颁奖典礼迎来了一众重要嘉宾,包括河北工程技术学院副校长田光、教学科研部部长吴书博、对外合作部部长王俊昆、软件学院院长赵冬梅,以及来自测吧(北京)科技有限公......
  • 篮桥训练(第一场)
    青蛙过河-蓝桥云课(lanqiao.cn)题意:现在一只青蛙过河,河里有石头,石头每踩一下就会下沉一厘米,然后给你河宽n,需要过河的次数,和里面石头的高度,0厘米就不能用了然后现在让你给出一个最小的x,就是青蛙的跳跃能力,一次能跳多远,你可以跳1到x,让你给出一个最小的x 题解:一看题我们就可......
  • 第四届“火焰杯”软件测试高校就业选拔赛颁奖典礼
    第四届“火焰杯”软件测试高校就业选拔赛颁奖典礼于10月10日下午在9A206举行,该比赛由软件测试就业联盟主办,吸引了来自测吧(北京)科技有限公司的项目总监王雪冬、计算机科学与技术学院副院长刘文果以及计算机科学与技术学院软件工程系主任张福勇等重要嘉宾前来颁奖。在本次比赛中,我......