题目

K
题意: 给定n次位运算,包括&、|、^.给定q次询问,每次可以选择[0,r]中的任意整数x,令x经过这n次位运算最大,输出选择的x.
思路: 贪心。比较套路的题,这n次位运算是独立的,可以对于每一位提前预处理出来,以0和1为起点能否变成1. 然后对于每次查询,从高位到低位处理,如果0能变成1直接这一位填0,如果1才能变成1在满足限制的前提下这一位填1,二进制特性,这一位选1比后边所有位都选1更优。
代码:

#include<bits/stdc++.h>
using namespace std;
const int N = 2e5+10;
int n,m,k,T;
struct node{int op;int x;
}a[N];
bool vis[33][2];
void solve()
{int q;scanf("%d%d",&n,&q);for(int i=0;i<n;++i){int op,x;scanf("%d%d",&op,&x);a[i] = {op,x};}for(int k=29;k>=0;--k) //ö�ٵ�kλΪ0����1����� {for(int i=0;i<=1;++i) //0��1 {int now = 0;if(i==0) now = 0;else now = (1<<k);for(int j=0;j<n;++j){int op = a[j].op;int x = a[j].x;if(x>>k&1) x = (1<<k);else x = 0;if(op==1) now &= x;else if(op==2) now |= x;else now ^= x;}if(now==(1<<k)) vis[k][i] = 1;}}while(q--){int mx; scanf("%d",&mx);int ans = 0;int cost = 0;for(int i=29;i>=0;--i){if(vis[i][0]){//              cout<<i<<"??\n";ans = ( ans | (1<<i) );}else if(vis[i][1]){int tmp = (1<<i);if(cost+tmp<=mx) cost = cost + tmp;}}printf("%d\n",cost);}
}
signed main(void)
{solve();return 0;
}

G
题意: 给定n层的树,第i层有i个叶子,类似数字三角形。起始所有叶子都是红的,有若干个叶子被染黑了。所有染黑的叶子的左右两儿子都会黑,如果相邻两个叶子都黑,他们上边的叶子也会黑。
思路: 如果某个叶子染黑,他可以一直扩展到第n层。最后的结果会是若干个互不相交的三角形,每个三角形的贡献是n*(n+1)/2。在第n层用差分维护,即可获得对应的三角形,统计答案。记得关流,不然输入就T了,麻。
代码:

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N = 1e6+10;
int b[N];
int n,m,k,T;
void solve()
{cin>>n>>k;while(k--){int i,j; cin>>i>>j;int l = j;int r = j+n-i;b[l]++,b[r+1]--;}for(int i=1;i<=n;++i) b[i] += b[i-1];int now = 0; ll ans = 0;for(int i=1;i<=n;++i){//      cout<<i<<":"<<b[i]<<"\n";if(b[i]>0) now++;else ans += 1ll*now*(now+1)/2,now = 0;}if(now) ans += 1ll*now*(now+1)/2,now = 0;cout<<ans;
}
signed main(void)
{ios::sync_with_stdio(false),cin.tie(0),cout.tie(0);solve();return 0;
}

I
题意: 给定x、y、z,x和y都有a个1、b个0,z有c个0. 满足y<=x,z=x-y。构造合法的x、y.
思路:
1 … 0
0 … 1
其余的1分别对应,做差的时候就可以忽略了。
令n=a+b,这样一做差就是n-1个1了。之后每次可以把最后的0和1都提前,每提前1位就减少1个1.
所以0到n-1个1都能变。
PS: 注意特判a、b、c为0的特殊情况
代码:

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N = 2e5+10;
int n,m,k,T;
void solve()
{int a,b,c; cin>>a>>b>>c;n = a+b;if(c==0){for(int i=0;i<a;++i) cout<<1; for(int i=0;i<b;++i) cout<<0;cout<<"\n"; for(int i=0;i<a;++i) cout<<1; for(int i=0;i<b;++i) cout<<0;return ;}if(a==0||b==0){cout<<-1; return ;}if(c<=n-1){vector<int> va(n),vb(n);va[0] = 1; vb[0] = 0;
//      int wh = (n-1)-c; //ƫ��.wh=0˵������Ӧ��λ��Ϊ���һλ��wh=1˵���ڵ�����2λ int idx = c;va[idx] = 0,vb[idx] = 1;int cnt1 = a-1,cnt0 = b-1;for(int i=1;i<n;++i){if(i==idx) continue;if(cnt1) {cnt1--; va[i] = vb[i] = 1;continue;}if(cnt0){cnt0--; va[i] = vb[i] = 0;continue;}}for(int i=0;i<n;++i) cout<<va[i];cout<<"\n";for(int i=0;i<n;++i) cout<<vb[i];}else cout<<-1;
}
signed main(void)
{ios::sync_with_stdio(false),cin.tie(0),cout.tie(0);solve();return 0;
}

2022 浙大城市学院 新生赛 补题相关推荐

  1. QLU_002新生赛补题

    文章目录 A题-构造最长递增子串 E题-由你来决定怎么颁奖 G题-0011 H题-Perfect String I题-十进制中的二进制 J题-新年快乐 A题-构造最长递增子串 题目描述 Hkhv ha ...

  2. 东莞城院c语言上机报告,浙大城市学院c语言上机试题

    浙大城市学院c语言上机试题 2010 -2011学年第 2 学期 实 验 报 告 实验课程名称 C语言程序设计基础实验 专 业 班 级 土木 1003 学 生 姓 号 31003290 学 生 姓 名 ...

  3. 【Python爬虫】2022年数学建模美赛B题数据爬取

    2022年数学建模美赛B题数据爬取 背景 2022年的美赛刚刚落下帷幕,该题的一个主要难点在于数据的获取.很多人无法找到有效的数据,或者是无法获取数据. 比如找到了如下米德湖的水文数据,但是发现并没有 ...

  4. 【数学建模】2022数维杯国际赛C题 如何利用脑结构特征和认知行为特征诊断阿尔茨海默病(How to Diagnose Alzheimer‘s Disease)

    2022数维杯国际赛C题 如何利用脑结构特征和认知行为特征诊断阿尔茨海默病 1 前言 2 问题重述 3 问题一求解 3.1 数据预处理 3.2 模型训练 3.2.1 逻辑回归 3.2.2 SVM 3. ...

  5. 林大5.1训练赛补题

    林大5.1训练赛补题 A.凸多边形曼哈顿 E.矩阵快速幂 I.线段dp A.凸多边形曼哈顿 题意:给你一个凸多边形,问你当其中K边形的最大dis[]是多少? 思路:首先是要发现K>=4的时候答案 ...

  6. 【调剂】浙大城市学院2023年硕士研究生招生调剂公告

    公众号[计算机与软件考研]每天都会发布最新的计算机考研调剂信息! 点击公众号界面左下角的调剂信息或者公众号回复"调剂"是计算机/软件等专业的所有调剂信息集合,会一直更新的. 各位考 ...

  7. 2022年数学建模国赛c题论文+代码(附详解)

    古代玻璃制品化学成分的分析与研究 摘要 古代玻璃极易受埋藏环境的影响而风化,并且在风化过程中,内部元素与环境元素进行着大量交换,导致其成分比例会发生变化,从而会影响对其类别的正确判断.玻璃在炼制的过程 ...

  8. 2019ICPC上海区域赛 补题(12/13) 总结

    前言: 个人的 ICPCICPCICPC 第一站,还是值得记录一下的(虽然咕到现在才记录),总体而言体验很不错,比赛兼旅游.这套题总体印象就是树树树图,作为队里数据结构兼图论选手,这次也确实写了大部分 ...

  9. 2022年第十一届小美赛C题 全保姆教程及完整代码

    哈喽大家好,本次给大家提供的是小美赛C题完整的解题思路及代码,所有视频跟代码都为本人亲自编写,代码及视频都以加上原创标识,抄袭必究.请认准原创:不知名数学家小P. 本题的答疑以及助攻内容文档如下: 2 ...

最新文章

  1. 新站收录急也急不来不如顺其自然!
  2. git 未能顺利结束(退出码1)
  3. python 多线程 廖雪峰_python中多线程与多进程中的数据共享问题
  4. 点击劫持:X-Frame-Options未配置
  5. 大数据人工智能物联网论文_物联网学报“大数据”相关论文汇总
  6. WebSocket转载
  7. 从零开始搭建系统2.4——Jenkins安装及配置
  8. 数据治理注意哪些问题
  9. Visual Studio2022 离线安装包下载
  10. python植物大战僵尸代码写完了怎么运行_植物大战僵尸的代码如何使用python来实现...
  11. web全栈前端学习路线-20个真实web开发项目集合
  12. 计算机越学越难不想学了,“我今年大一,学的专业是计算机,真的快崩溃了,什么都不懂”...
  13. 卜若的代码笔记-python系列-神经网络篇-第十四章:基于keras框架的男女性别识别
  14. 解决ubuntu18.04打不开网易云音乐(亲测可行!
  15. etal斜体吗 参考文献_参考文献方面毕业论文格式模板,与文下载****北京化工大学学报相关论文下载...
  16. Dubbo 实现原理与源码解析系列 —— 精品合集
  17. 证件照制作小程序源码下载-超级实用工具
  18. CPU和主存包括什么?
  19. 网友8年观察楼市得出11大房价经验 高手在民间
  20. 图片制作二次元头像,表情很到位哦

热门文章

  1. 工程师注意了,你PCB板就是这样被抄的!
  2. 关闭数据库的几种方法
  3. 论文阅读笔记 | 目标检测算法——PP-YOLOv2
  4. 产品原型设计工具 Mockup
  5. 染纱厂车间一个普通员工的工资
  6. centos 镜像文件说明
  7. lisp成套电气设计_AutoLISP在电气制图中的应用
  8. SSM毕设项目民宿管理系统geszf(java+VUE+Mybatis+Maven+Mysql)
  9. 外卖订单爬虫 定时自动抓取三大外卖平台上商家订单(美团,饿了么,百度外卖)
  10. 【转】编程需要了解数学吗?哪些数学?怎样学习?