发挥还行,约了三五好友一起打,不过有点晚,该睡了,睡前简单写一波题解,明天记得补题

Dashboard - Codeforces Round #817 (Div. 4) - Codeforces

完成:abcde

f纯暴力实在是不爱写(全队代码能力最差是真的石锤),g太困了懒得看,看起来是bitset,明天再看一下,现在该去睡觉了

A:给字符串问是否为Timur 的全排列,直接记录了下每个字母的出现次数,结束

B:给俩字符串,有B和G和R,求蓝绿色盲看俩串是否一样,R标0,BG标1,看串是否一样

C:给仨人,每人出n个长度为3的不相同的字符串,如果俩人有一样的串各加1分,仨人不加分,只有自己有加一分,求总分。字符串相当于三位26进制数,换算成10进制,直接排序,找相同值的个数

#include<cstdio>
#include<cstring>
#include<algorithm>
#include<iostream>
#include<string>
#include<vector>
#include<stack>
#include<cstdlib>
#include<cmath>
#include<set>
#include<list>
#include<deque>
#include<map>
#include<queue>
#include<bitset>
#include<limits.h>
using namespace std;
char s1[110],s2[110],s3[110];
struct XD{int num,id;
};
XD a[3100];
int ans[4];
bool cmp(XD a,XD b)
{return a.num<b.num ;
}
int main()
{int n,m;cin>>n;while(n--){ans[1]=0,ans[2]=0,ans[3]=0;cin>>m;for(int i=1;i<=m;i++){cin>>s1;a[i].num=(s1[0]-'a')*26*26+(s1[1]-'a')*26+(s1[2]-'a')+1;a[i].id=1;}for(int i=1;i<=m;i++){cin>>s2;a[i+m].num=(s2[0]-'a')*26*26+(s2[1]-'a')*26+(s2[2]-'a')+1;a[i+m].id=2;}for(int i=1;i<=m;i++){cin>>s3;a[i+m*2].num=(s3[0]-'a')*26*26+(s3[1]-'a')*26+(s3[2]-'a')+1;a[i+m*2].id=3;}sort(a+1,a+1+m*3,cmp);a[m*3+1].num =0;
//      for(int i=1;i<=m*3;i++)
//      {
//          cout<<a[i].num<<" "<<a[i].id<<"\n";
//      }for(int i=1;i<=m*3;i++){if(a[i].num==a[i-1].num){if(a[i].num==a[i+1].num) i++;else{ans[a[i].id]++;ans[a[i-1].id]++;}}else{if(a[i].num!=a[i+1].num) {ans[a[i].id]+=3;}}}cout<<ans[1]<<" "<<ans[2]<<" "<<ans[3]<<"\n";} }

D:给个长度为n的字符串,L表示向左看,R表示向右看,最多修改1-n个字母,求能看到的字母个数。(发现写麻烦了)统计初始值和修改差值,sort修改差值,结束

#include<cstdio>
#include<cstring>
#include<algorithm>
#include<iostream>
#include<string>
#include<vector>
#include<stack>
#include<cstdlib>
#include<cmath>
#include<set>
#include<list>
#include<deque>
#include<map>
#include<queue>
#include<bitset>
#include<limits.h>
using namespace std;
char s1[200005];
int flag[200005];
int main()
{int n,m;cin>>n;while(n--){cin>>m;cin>>s1;long long ans=0;for(int i=0;i<m;i++){if(s1[i]=='L'){ans+=i;if(i<m-i-1){flag[i]=m-i-1-i;}else{flag[i]=0;}}else{ans+=m-i-1;if(i>m-i-1){flag[i]=i-(m-i-1);}else{flag[i]=0;}}}sort(flag,flag+m);for(int i=m-1;i>=0;i--){ans+=flag[i];flag[i]=0;cout<<ans<<" ";}cout<<"\n";}}

网太卡这个写法甚至没能提交上去,我真的醉了

刚打完上面那句话网就上去了,过了,果然网站是需要吓一吓的,比赛的时候写着写着发现网卡了,正准备截图发群里说“大风车吱呀吱呀呀的转”,网好了,草

E:给m个长方形和q个询问,每个询问包含两个矩形,求给定矩形面积和,使得能把询问的小正方形完全包含并且被给定的大正方形完全包含。

二维数点,写过一次,主席树做法依旧没补,指路(51条消息) 代码源#464数数_yeah17981的博客-CSDN博客

#include<bits/stdc++.h>
using namespace std;
const int N=1e6+10;struct XD{long long x,y,w;long long edge,id;
};
XD a[N];
long long tree[N];
long long maxy;
long long g[N];
long long ans[N][5];
void add(long long x,long long k,long long maxy)
{for(long long i=x;i<=maxy;i+=i&-i){tree[i]+=1ll*k;}
}
long long ask(long long x)
{long long res=0;for(long long i=x;i;i-=i&-i){res+=tree[i];}return res;}
bool cmp(XD a,XD b)
{if(a.x==b.x){if(a.y==b.y){return a.id <b.id ;}return a.y<b.y ;}return a.x<b.x;}void solve()
{memset(tree,0,sizeof(tree)); memset(g,0,sizeof(g)); memset(ans,0,sizeof(ans)); memset(a,0,sizeof(a));long long n,m,x1,x2,y1,y2;cin>>n>>m;for(long long i=1;i<=n;i++){cin>>a[i].x>>a[i].y;a[i].w=a[i].x*a[i].y;g[i]=a[i].y;} long long num=n;for(long long i=1;i<=m;i++){cin>>x1>>y1>>x2>>y2;x1+=1;x2-=1;y1+=1;y2-=1;a[++num].x=x1-1;a[num].y=y1-1;a[num].edge=1;a[num].id=i;g[num]=y1-1;a[++num].x=x2;a[num].y=y1-1;a[num].edge=2;a[num].id=i;g[num]=y1-1;a[++num].x=x1-1;a[num].y=y2;a[num].edge=3;a[num].id=i;g[num]=y2;a[++num].x=x2;a[num].y=y2;a[num].edge=4;a[num].id=i;g[num]=y2;}sort(a+1,a+1+num,cmp);sort(g+1,g+num+1);long long maxy=unique(g+1,g+1+num)-g-1;for(long long i=1;i<=num;i++){if(!a[i].id){long long pos=lower_bound(g+1,g+1+maxy,a[i].y)-g;add(pos,a[i].w,maxy);}else{long long pos=lower_bound(g+1,g+1+maxy,a[i].y)-g;ans[a[i].id][a[i].edge]=ask(pos);}}for(long long i=1;i<=m;i++){cout<<ans[i][4]+ans[i][1]-ans[i][3]-ans[i][2]<<"\n";}
}int main()
{std::ios_base::sync_with_stdio(false);cin.tie(NULL); cout.tie(NULL);long long _;cin>>_;while(_--){solve();}} 

也不知道为啥网这么差,代码都复制不下来

还有五分钟比赛结束,无尽的等待……

不对啊,既然我要等到比赛结束发,我为啥刚刚不看看题捏,反正都睡不了,草,失策了

还有三分钟,感觉这个网不太支持我登上去看G题了,那就算了吧,快快结束,快快睡觉,QAQ

好困呜呜呜,中午没睡,希望我的除螨喷雾快点到,上床鼻子难受,不上床又困死了,呜呜呜呜呜

小小倒计时 3 2 1,提交!睡觉!

Codeforces Round #817 (Div. 4)相关推荐

  1. 【算法题解】Codeforces Round #817 (Div. 4)题解

    文章目录 Codeforces Round #817 (Div. 4)题解 A. Spell Check B. Colourblindness C. Word Game D. Line E. Coun ...

  2. Codeforces Round #817 (Div. 4)(7/7)

    不会有人div4的A还wa几发吧,那个人不会是我吧 Problem - A - Codeforces AC代码: #include <bits/stdc++.h> using namesp ...

  3. Codeforces Round #506 (Div. 3)

    Codeforces Round #506 (Div. 3) 实习期间事不多,对div3 面向题解和数据编程了一波 A. Many Equal Substrings 题目链接 A题就是找后缀和前缀重合 ...

  4. Codeforces Round #563 (Div. 2)/CF1174

    Codeforces Round #563 (Div. 2)/CF1174 CF1174A Ehab Fails to Be Thanos 其实就是要\(\sum\limits_{i=1}^n a_i ...

  5. 构造 Codeforces Round #302 (Div. 2) B Sea and Islands

    题目传送门 1 /* 2 题意:在n^n的海洋里是否有k块陆地 3 构造算法:按奇偶性来判断,k小于等于所有点数的一半,交叉输出L/S 4 输出完k个L后,之后全部输出S:) 5 5 10 的例子可以 ...

  6. Codeforces Round #696 (Div. 2) (A ~ E)超高质量题解(每日训练 Day.16 )

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Codeforces Round #696 (Div. 2) (A ~ E)超高质量题解 比赛链接:h ...

  7. Codeforces Round #712 Div.2(A ~ F) 超高质量题解(每日训练 Day.15 )

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 Codeforces Round #712 Div.2(A ~ F) 题解 比赛链接:https:// ...

  8. Codeforces Round #701 (Div. 2) A ~ F ,6题全,超高质量良心题解【每日亿题】2021/2/13

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 目录 A - Add and Divide B - Replace and Keep Sorted C ...

  9. Codeforces Round #700 (Div. 2) D2 Painting the Array II(最通俗易懂的贪心策略讲解)看不懂来打我 ~

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 整场比赛的A ~ E 6题全,全部题目超高质量题解链接: Codeforces Round #700 ...

最新文章

  1. 基于图像的三维模型重建——稠密点云重建
  2. 微软对学生免费提供Visual Studio等开发软件(包括中国)
  3. java编程思想 入门_java编程思想学习(基础)
  4. Linux C编程一站式学习读书笔记——socket编程
  5. linux c 创建子进程执行任务 简介
  6. 俄亥俄州立大学计算机科学排名,俄亥俄州立大学CS专业排名2020年
  7. Serverless 选型:深度解读 Serverless 架构及平台选择
  8. 特稿 | OceanBase 连破纪录:蚂蚁技术人的砥砺前行
  9. JVM之GCRoots概述
  10. 招聘 | 微生太高薪招聘多组学生信官(硕士及以上),月薪12k(北京为例),全国均可办公,推荐成功者奖励2000元...
  11. scala编程第18章学习笔记——有状态的对象
  12. TUXEDO配置常见问题及解决方法
  13. 卸载mysql的步骤_卸载MySQL数据库的完整步骤(图)
  14. 中标麒麟linux系统安装打印机_中标麒麟系统安装教程
  15. 开启windows10系统组策略更新、开启Windows自动更新、关闭自动更新
  16. 冶金物理化学复习 --- 典型熔渣模型
  17. 1岁到1岁半宝宝食谱
  18. android和chrome的发展与未来[j].移动通信,基于Android手机app开发与设计 毕业设计 开题报告...
  19. C语言——A、‘A‘、“A“的区别
  20. 汇编程序:将字符串倒序输出

热门文章

  1. [ Oracle EBS ] 资产 摊销调整、累计折旧等介绍
  2. html鼠标移入显示图片动画,HTML5+CSS3鼠标移入移出图片生成随机动画_html/css_WEB-ITnose...
  3. php引用字体,thinkphp引入字体文件时候被当做模块求解决问题
  4. 系统进程里的edpa.exe是什么?
  5. Nginx安装及详细配置
  6. js 通过 exceljs 和 canvas 实现导出带水印的 excel 表
  7. 明星玩跨界,全民娱乐时代来临!
  8. NVIDIA Jetson之UART功能开发
  9. mysql 1677_MySQL之数据库主从复制配置报错Last_Errno: 1677
  10. 台式机安装Windows11正式版(跳过TPM)