首页 > 其他分享 >暑假补题记2

暑假补题记2

时间:2023-07-22 11:12:36浏览次数:45  
标签:return int long zha vis 暑假 题记 include

 题解:主要是对于炸弹时间的处理,直接让时间赋值给数组,进行判断即可,跑一遍bfs的板子就可以了。

#include <bits/stdc++.h>
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <queue>
#include <cmath>
//#define int long long
using namespace std;
const int N=1000;

int zha[N][N];
int vis[N][N];

struct ac{
    int x,y,t;
};

int biao[5][2]={{0,1},{0,-1},{1,0},{-1,0}};

queue<ac> q;

int bfs()
{
    q.push({0,0,0});
    vis[0][0]=1;
    while (!q.empty())
    {
        ac nod;
        nod=q.front();
        q.pop();
        for(int i=0;i<4;i++)
        {
            int xx=nod.x+biao[i][0];
            int yy=nod.y+biao[i][1];
            int tt=nod.t+1;
            if( (vis[xx][yy]==1) || (xx<0) || (yy<0) || (zha[xx][yy]<=tt) )
                continue;
                vis[xx][yy]=1;
                if(zha[xx][yy]>1000) return tt;
                q.push({xx,yy,tt});
        }
    }
    return -1;
}
int main()
{
    int m;
    scanf("%d",&m);
    memset(zha,10086, sizeof (zha));
    memset(vis, 0, sizeof(vis));
    for(int i=1; i<=m; i++)
    {
        int x1,y1,t1;
        scanf("%d%d%d",&x1,&y1,&t1);
        zha[x1][y1]=min(t1,zha[x1][y1]);
        for(int j=0;j<4;j++)
        {
            int xx=x1+biao[j][0];
            int yy=y1+biao[j][1];
            if(xx>=0&&yy>=0)
            zha[xx][yy]=min(zha[xx][yy],t1);
        }
    }
    cout<<bfs();
    return 0;
}

Problem - E - Codeforces

 

题解:一个二分题,但是数据非常大,然后r的边界要是根号c才符合 或者1e9也过,注意开__int128给 sum

#include <bits/stdc++.h>
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
#include <queue>
#include <cmath>
#define int long long
using namespace std;
const int N=2e5+5;

int a[N];
int n,c;
bool check(int x)
{
    __int128 sum=0;
    for(int i=1;i<=n;i++)
    {
        sum+=((__int128)a[i]+2*x)*((__int128)a[i]+2*x);
    }
    if(sum>=(__int128)c)
    {
        return true;
    }
    else
        return false;
}
int32_t main() {
    ios::sync_with_stdio(0),cin.tie(0),cout.tie(0);
    int t;
    cin>>t;
    while (t--)
    {

        cin>>n>>c;
        for(int i=1;i<=n;i++)
        {
            cin>>a[i];
        }
        int l,r;
        l=1,r=1e9;
        while (l<r)
        {
            int mid=(l+r)/2;
            if(check(mid)) r=mid;
            else l=mid+1;
        }
        cout<<l<<endl;
    }
    return 0;
}

 

标签:return,int,long,zha,vis,暑假,题记,include
From: https://www.cnblogs.com/whatdo/p/17573012.html

相关文章

  • 2023 暑假牛客多校
    时隔一年,多校又至。还是和jimmywang与shihoghmean组队。只可惜后面要文化课了,可能打不完。只记一些赛时想过的和听完题解后会的妙妙题:7.17“范式杯”2023牛客暑期多校训练营1......
  • 暑假第二周
    这一周配置了虚拟机,安装了linux系统,并学习了一些Linux的命令1..Linux的目录结构是一个树型结构windows系统可以拥有多个盘符如C盘、D盘、E盘Linux没有盘符这个概念,只有一个根目录/所有文件都在它下面2.Linux路径的描述方式在Linux系统中,路径之间的层级关系,使用:/来表示在wi......
  • 暑假生活每周总结5
    本周完成了hadoop的hive数据库的配置,基本的使用数据存储使用语句使用sql语句进行了书写。 进一步熟悉hive数据库的操作。importjava.sql.*;importjava.util.ArrayList;importjava.util.List;publicclassDao{publicList<Load>selectAll(){List<Load>......
  • 2023 暑假集训模拟赛题解
    目录CSP模拟1CSP模拟2FSYOCSP模拟1来自学长的馈赠2.CSP模拟2F考虑\(x\)只能在\(a_1\oplusb_i\)里选,那么分别代入暴力检验即可.时间复杂度\(\tilde\Theta(n^2)\),可以通过.S考虑交换同色的部分一定不优,所以同色字符的相对位置一定是不变的.那么操作序列......
  • 7.20 做题记录
    由于剪切板被误删了,所以搬运比较合适的题解。[ARC150F]ConstantSumSubsequenceSolution总结:判定条件严格时,考虑扩充条件利用单调性和分治结构减小状态数CF1523GTryBookingSolution总结:区间不交可以考虑分治CF1464FMyBeautifulMadnessSolution总结:集合到......
  • 暑假对STL的学习用法
    mapmap<int,int>s;map<int,vector<int>>s;map<int,list<int>>s;这些就是map的初始化法子,前面那个就相当于数组下标,后面的就是键值了,可以用它搞二维数组就像第二三个一样。然后就是他的用处,他可以自动排序,但是是按照前面的key值排序,就是下标拉,不过看你怎么用这个东西,这......
  • 230720 做题记录 // 费用流练习
    A.订货http://222.180.160.110:1024/contest/3820/problem/1这个带继承关系的模型很熟悉,想到了猪那一题。所以我们试着仿照这个方式来建图。题目提到了单位费用,这简直就是直接把边的费用拍你脸上嘲讽。我们拉一个大源点,朝每个月连一条容量为无穷大、费用为购买单位费用的边......
  • 牛客暑假多校 2023 第一场
    目录写在前面LH写在前面比赛地址:https://ac.nowcoder.com/acm/contest/57355。官方题解写得太好了都感觉没有自己整理的必要。简单写写有启发性的东西。我是垃圾。L发现进行三次操作后有:\[(x,y,z)\rightarrow(a_{b_{c_x}},b_{c_{a_{y}}},c_{a_{b_{z}}})\]每个位置仅......
  • 23暑假友谊赛
    23暑假友谊赛马猴烧酒思路:枚举对行的所有可能操作,判断列需要的操作次数是否满足条件;#include<bits/stdc++.h>usingnamespacestd;#defineintlonglongtypedefpair<int,int>PII;typedefpair<string,int>PSI;typedefpair<string,string>PSS;constintN=1e4+5,INF......
  • HDU 暑假多校 2023 第一场
    目录写在前面72837279727672757284写在最后写在前面补题地址:HDUOJ题库第63页,题号7275~7286。以下题号以题库中题号为准。题目选补,按照个人认为题目难度排序,因为我是菜狗。打这场看到马娘题目直接整个人兴奋,于是推了3h推不出来滚粗了。以为是手玩题没想到是正统博弈论呃......