首页 > 其他分享 >SMU Summer 2024 Contest Round 4

SMU Summer 2024 Contest Round 4

时间:2024-07-17 20:43:56浏览次数:6  
标签:Summer int SMU cin long 2024 maxn sum define

1.H and V

原题链接:

http://162.14.124.219/contest/1008/problem/B

二进制枚举行列即可

查看代码
#include <bits/stdc++.h>
#define int long long
#define PII pair<int,int>
using namespace std;
int n,m,k;
char a[10][10];
signed  main() {
    ios::sync_with_stdio(false);cin.tie(0);
  	cin>>n>>m>>k;
  	int sum=0;
  	for(int i=0;i<n;++i){
  		for(int j=0;j<m;++j){
  			cin>>a[i][j];
  			if(a[i][j]=='#') sum++;
  		}
  	}

  	int cnt=0;
  	int ans=0;
  	 for(int i=0;i<(1<<n);++i){
  	 	for(int j=0;j<(1<<m);++j){
  	 		cnt=0;
  	 		for(int r=0;r<n;++r){
  	 			for(int c=0;c<m;++c){
  	 				if( ((i&(1<<r)) || (j&(1<<c)))&& a[r][c]=='#') cnt++;
  	 			} 
  	 		}
  	 		if(cnt==sum-k) ans++;
  	 	}
  	 }

  	 cout<<ans<<endl;

    return 0;
}

2.Moving Piece

原题链接:

http://162.14.124.219/contest/1008/problem/C

查找循环节并存入ve中,并贪心取最优

查看代码
 #include<bits/stdc++.h>
using namespace std;
#define int long long
const int maxn = 2e5 + 9;
int Pp[maxn],Cc[maxn],mp[5009];
int a[maxn],sum[maxn];
vector<int>ve[5009];
signed  main()
{
    int n,k;
    int x;
    cin>>n>>k;
    for(int i=1;i<=n;i++)
    {
        cin>>a[i];
        Pp[i]=a[i];
    }
    for(int i=1;i<=n;i++)
    {
        cin>>x;
        Cc[i]=x;
    }
    int ans=-1e18;
    for(int i=1;i<=n;i++)
    {
        int now=i;
       memset(mp,0,sizeof mp);
        while(1)
        {
            now=Pp[now];
            if(mp[now]==1) break;
            mp[now]=1;
            sum[i]+=Cc[now];
            ve[i].push_back(Cc[now]);
        }
        int len=ve[i].size();
        int d=k/len;
        int m=k%len;
        now=0;
        if(sum[i]>0)
        {
            if(m==0)
            {
                now=(d-1)*sum[i];
                m=len;
            }
            else now=d*sum[i];
            for(int j=0;j<m;j++) now+=ve[i][j],ans=max(ans,now);
        }
        else
        {
            if(d==0)
            {
                for(int j=0;j<m;j++) now+=ve[i][j],ans=max(ans,now);
            }
            else
            {
                for(int j=0;j<len;j++) now+=ve[i][j],ans=max(ans,now);
            }
        }
    }
    cout<<ans;
    return 0;
}

3.Sum of Divisors

原题链接:

http://162.14.124.219/contest/1008/problem/D

反着回去找会爆,那就正着去找

查看代码
 #include <bits/stdc++.h>
#define int unsigned long long
#define PII pair<int,int>
using namespace std;
int a[10000010];
signed main() {
    int n;
    cin>>n;
    for(int i=1;i<=n;i++)
    {
        for(int j=i;j<=n;j+=i)
            a[j]++;
    }
    int sum=0;
    for(int i=1;i<=n;i++)
        sum+=a[i]*i;
    cout<<sum;
    return 0;
}

标签:Summer,int,SMU,cin,long,2024,maxn,sum,define
From: https://www.cnblogs.com/violet-hty/p/18305728

相关文章

  • 2024-07-17 如何在vscode部署你的代码块,从而在新建页面时能快速搭建模板(windows环境)
    步骤一:打开vscode,按住ctrl+shif+p唤出命令窗口 步骤二:在窗口中输入命令,并回车Preferences:OpenUserSnippets 对,就是这个代码片段,接着输入你想添加代码的某某语言or脚本,比如我要添加vue的代码片段输入vue,回车,会显示vue.json文件出来给你更改,我的是这样 注意:如果你......
  • 2024-07-17 搭建一个node+express服务器,并把静态资源部署到该服务器(本地开发)
    前言:请确保你已安装了node,没有你得先装这个。步骤一://创建文件夹mkdirexpress-node//创建完了进入该文件夹cdexpress-node//初始化npminit-y//安装expressnpmiexpress前提工作都准备好后,在express-node文件夹里新建文件server.js,作为启动服务器的入口文件......
  • 2024.7.15 近期练习
    P3488[POI2009]LYZ-IceSkates我们对于鞋码为\(x\)的人,贪心地,显然先把鞋小的给他穿。所以就有了一个暴力的检验方法:从左往右扫,并对应修改。但是这样太慢。这是一个二分图匹配问题,考虑Hall定理。对于任意\(1\lel\ler\len\),当\(sum(a_l\sima_r)\le(r-l+1+d)k\)时合......
  • Goby漏洞发布 | CVE-2024-4879 ServiceNowUI /login.do Jelly模板注入漏洞【已复现】
    漏洞名称:ServiceNowUI/login.doJelly模板注入漏洞(CVE-2024-4879)EnglishName:ServiceNowUI/login.doInputValidationVulnerability(CVE-2024-4879)CVSScore:9.3漏洞描述:ServiceNow是一个业务转型平台。通过平台上的各个模块,ServiceNow可用于从人力资源和员工管理到自动......
  • NOI2024游记
    试图性的写一下游记,本来都懒得写了,但是由于太戏剧性了就还是写一下吧Day-?记不太清了,写一部分把由于要提前到重庆熟悉环境,所以我们就都来了来的这段时间是跟着nfls打模拟赛+UNR第一天打的超级好,哈哈,排名12/70+然后就非常高兴第二天和第三天是UNR,打的屁也不是,混了个Cu就滚了......
  • 常用十大加密软件排行榜丨2024好用的加密软件推荐
    2023年7月,中国人民大学的一位硕士毕业生盗取了该校2014级到2022级学生的大量个人隐私信息,包括照片、姓名、学号、籍贯等,并制作成网站,供人搜索浏览甚至颜值打分。该事件引发了对个人隐私保护和数据安全的广泛关注,突显了加密软件在防范数据泄露中的重要性。随着科技的发展,越来......
  • 2024年华为OD机试真题-图像物体的边界-C++-OD统一考试(C卷D卷)
     2024年OD统一考试(D卷)完整题库:华为OD机试2024年最新题库(Python、JAVA、C++合集)题目描述:给定一个二维数组M行N列,二维数组里的数字代表图片的像素,为了简化问题,仅包含像素1和5两种像素,每种像素代表一个物体,2个物体相邻的格子为边界,求像素1代表的物体的边界个数。像素1代表的......
  • 题解:P10723 [GESP202406 七级] 黑白翻转
    背景汗流浃背了。分析容易想到一个显然的思路:以任意节点为根,开始遍历。如果一个节点的子树里面有黑点,那么它必须保留,否则如果它是白点,则可以删去。但这个方法很容易举出反例:在这颗树中,如果以最上面的白点为根,那么手推发现算法显然错误。尝试进行修改,容易发现,对于类似的情况......
  • 题解:P10722 [GESP202406 六级] 二叉树
    题意一颗\(n\)节点的二叉树,每个节点非黑即白,给你\(Q\)次操作,每次给你一个\(u\),把\(u\)的子树内所有节点颜色反转,问最终每个节点的颜色。分析看到数据范围,首先把操作离线。容易发现如果一个节点重复操作奇数次,等效于操作一次,如果重复操作偶数次,等效于没操作。所以我们可......
  • 2024-07-17 vite打包vue项目,无法正确加载,报错:TypeError: Failed to resolve module sp
    我这会打算打个包扔到线上看看效果,结果线上报错:TypeError:Failedtoresolvemodulespecifier"vue".Relativereferencesmuststartwitheither"/","./",or"../".奇怪,之前还好好的,因为本地调试什么的都正常,甚至昨天都可以打包。我不信邪,遂新建vue项目,做一下测试,这......