cf1199解题报告

目录

  • cf1199解题报告
    • A
    • B
    • C
    • D
    • E
    • F

cf1199解题报告

发一波水题。

A

模拟

#include <bits/stdc++.h>
#define ll long long
using namespace std;
const int _=1e6+7;
int n,x,y,a[_];
int main() {scanf("%d%d%d",&n,&x,&y);for(int i=1;i<=n;++i) scanf("%d",&a[i]);for(int d=1;d<=n;++d) {int flag=0;for(int j=max(1,d-x);j<d;++j)if(a[d]>=a[j]) flag=1;for(int j=d+1;j<=min(n,d+y);++j)if(a[d]>=a[j]) flag=1;if(!flag) return printf("%d\n",d),0;}return 0;
}

B

小学几何题。输出lf格式不对错了几发、、、

#include <bits/stdc++.h>
#define ll long long
using namespace std;
const int _=1e6+7;
double H,L,x;
int main() {cin>>H>>L;double x=(H*H+L*L)/(2*H);printf("%.13lf\n",x-H);return 0;
}

C

最多能保留几个不同的数,然后删就行了。
我以为是\(map\)\(log\)太大了T了。
其实是暴利统计最多保留几个没加范围。

#include <bits/stdc++.h>
using namespace std;
const int _=4e5+7;
int n,m,k,a[_],ans=0x3f3f3f3f;
int Hash[_],lsh[_];
vector<pair<int,int> > tmp;
int sum[_];
int read() {int x=0,f=1;char s=getchar();for(;s>'9'||s<'0';s=getchar()) if(s=='-') f=-1;for(;s>='0'&&s<='9';s=getchar()) x=x*10+s-'0';return x*f;
}
int main() {n=read(),m=read()*8;for(int i=1;i<=n;++i) lsh[i]=a[i]=read();sort(lsh+1,lsh+1+n);int len=unique(lsh+1,lsh+1+n)-lsh-1;for(int i=1;i<=n;++i) a[i]=lower_bound(lsh+1,lsh+1+len,a[i])-lsh;for(int i=1;i<=n;++i) Hash[a[i]]++;while((int)ceil(log2(k+1))*n<=m&&k<=n) k++;for(int i=1;i<=n;++i)if(Hash[i]) tmp.push_back(make_pair(i,Hash[i]));int Siz=tmp.size();for(int i=0;i<Siz;++i) {if(i) sum[i]=sum[i-1];sum[i]+=tmp[i].second;if(i<k) ans=min(ans,n-sum[i]);else ans=min(ans,n-sum[i]+sum[i-k]);}printf("%d\n",ans);return 0;
}

D

每个数最后的值=max(上一次更改的值,这段时间内政府补贴的最大值)。
由于都是后缀,\(O(n)\)统计一遍就行了。
当然也可以学傻了写线段树或者BIT。

#include <bits/stdc++.h>
using namespace std;
const int _=4e5+7;
namespace seg {#define ls rt<<1#define rs rt<<1|1int a[_],ma[_<<2];void build(int l,int r,int rt) {if(l==r) {ma[rt]=a[l];return;}int mid=(l+r)>>1;build(l,mid,ls);build(mid+1,r,rs);ma[rt]=max(ma[ls],ma[rs]);}int modify(int L,int R,int l,int r,int rt) {if(L>R) return 0;if(L<=l&&r<=R) return ma[rt];int mid=(l+r)>>1,ma=0;if(L<=mid) ma=max(ma,modify(L,R,l,mid,ls));if(R>mid) ma=max(ma,modify(L,R,mid+1,r,rs));return ma;}
}
int n,a[_],las[_],q,dsr[_];
int main() {// freopen("a.in","r",stdin);scanf("%d",&n);for(int i=1;i<=n;++i) scanf("%d",&a[i]);scanf("%d",&q);for(int i=1,opt,p,x;i<=q;++i) {scanf("%d",&opt);if(opt==1) scanf("%d%d",&p,&x),las[p]=i,dsr[i]=x;else scanf("%d",&x),seg::a[i]=x;}seg::build(1,q,1);for(int i=1,val;i<=n;++i) {if(!las[i]) val=a[i];else val=dsr[las[i]];val=max(val,seg::modify(max(las[i],1),q,1,q,1));printf("%d ",val);}return 0;
}

E

\(matching\)\(indset\)至少存在一个。
每次遇到符合\(matching\)的边就加上。
做完后,剩下的点就是\(indset\)的。
反证:没在\(matching\)的两个点,而且有边相连,显然矛盾。
因为是\(3n\)个点,所以做完后一定有一个满足条件。

#include <bits/stdc++.h>
using namespace std;
const int _=5e5+7;
int T,n,m,vis[_];
std::vector<int> dsr;
int main() {scanf("%d",&T);while(T --> 0) {scanf("%d%d",&n,&m);dsr.clear();for(int i=1;i<=3*n;++i) vis[i]=0;for(int i=1,u,v;i<=m;++i) {scanf("%d%d",&u,&v);if(!vis[u]&&!vis[v]) {vis[u]=vis[v]=1;dsr.push_back(i);}}if((int)dsr.size()>=n) {printf("Matching\n");for(int i=0;i<n;++i) printf("%d ",dsr[i]);printf("\n");} else {printf("IndSet\n");for(int i=1,js=1;js<=n;++i)if(!vis[i]) printf("%d ",i),++js;printf("\n");}}return 0;
}

F

大爆搜
\(f[x][y][X][Y]\)表示左上角\((x,y)\),右下角\((X,Y)\)的矩阵变为白色的最小代价。
每次转移\(O(n)\),有\(O(n^4)\)个转态。复杂度\(O(n^5)\)

#include <bits/stdc++.h>
#define FOR(i,a,b) for(int i=a;i<=b;++i)
using namespace std;
const int _=51;
int n,s[_][_],num[_][_],f[_][_][_][_];
char S[_][_];
int calc(int x,int y,int X,int Y) {return s[X][Y]-s[x-1][Y]-s[X][y-1]+s[x-1][y-1];
}
int dfs(int x,int y,int X,int Y) {if(!calc(x,y,X,Y)||f[x][y][X][Y]) return f[x][y][X][Y];if(x==X&&y==Y) {f[x][y][X][Y]=1;return 1;}f[x][y][X][Y]=max(X-x+1,Y-y+1);for(int i=x;i<X;++i)f[x][y][X][Y]=min(f[x][y][X][Y],dfs(x,y,i,Y)+dfs(i+1,y,X,Y));for(int i=y;i<Y;++i)f[x][y][X][Y]=min(f[x][y][X][Y],dfs(x,y,X,i)+dfs(x,i+1,X,Y));return f[x][y][X][Y];
}
int main() {freopen("a.in","r",stdin);scanf("%d",&n);for(int i=1;i<=n;++i) {scanf("%s",S[i]+1);for(int j=1,tot=0;j<=n;++j) {tot+=(S[i][j]=='#');s[i][j]=s[i-1][j]+tot;}}printf("%d\n",dfs(1,1,n,n));return 0;
}

转载于:https://www.cnblogs.com/dsrdsr/p/11372863.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/363124.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

带有Gradle的Docker容器分为4个步骤

您是否需要通过Java Web应用程序创建Docker映像&#xff1f; 您在使用Gradle吗&#xff1f; 如果是这样&#xff0c;那么您距Docker nivana仅4步之遥。 对于此示例&#xff0c;我将使用一个简单的Spring Boot应用程序。 您可以在我的名为galoshe的Github存储库中找到所有源代码…

ImagesSprite V1.1.1 Beta发布

ImagesSprite v 1.1 发布后有网友提出样式显示了&#xff0c;但不能复制&#xff0c;现做调整如下&#xff08;20090804&#xff09;&#xff1a; 1.修正主界面下方css样式不能复制。 2.修正生成时透明色没有保存。【下载ImagesSprite V1.1.1 Beta】- 点击:4次转载于:https://w…

使用Spark构建简单的RESTful API

免责声明 &#xff1a;这篇文章是关于名为Spark的Java微型Web框架的&#xff0c;而不是关于数据处理引擎Apache Spark的 。 在此博客文章中&#xff0c;我们将看到如何使用Spark构建简单的Web服务。 如免责声明中所述&#xff0c;Spark是受Ruby框架Sinatra启发的Java微型Web框…

cf1206解题报告

目录 cf1206解题报告ABCDE&#xff0c;Fcf1206解题报告 A 模拟 #include <bits/stdc.h> using namespace std; int n,m,a[1010],b[12910]; int dsr[1111]; int main() {scanf("%d",&n);for(int i1;i<n;i) scanf("%d",&a[i]),dsr[a[i]]1;s…

canvas时钟

<!DOCTYPE html><html><head lang"en"><meta charset"UTF-8"><title></title></head><body><canvas id"canvas" width"500" height"500">您的浏览器不支持&#xff…

第七周

这个作业属于哪个课程C语言程序设计 &#xff08;第三版&#xff09;这个作业要求在哪里2019春季第七周作业我的课程目标学习指针的运用这个作业在哪个具体方面帮助我实现目标这个作业让我知道了指针实用性参考文献无一、2019春第七周作业&#xff08;基础题&#xff09; 7-2 自…

很久没来了,嘿嘿 问候一下大家,O(∩_∩)O哈哈~

很久没来了&#xff0c;嘿嘿。发现上次发帖正好是一个月以前哦&#xff0c;嘿嘿。最近职位火热招聘&#xff0c;有意向的快联系哦&#xff0c;嘿嘿1. BI Technical PM BI Technical PM Job Location: Redmond Oversea education or working background. 2 …

Java EE 8 –为更多设备提供更多应用程序

如果我不喜欢夏天的一件事&#xff0c;那就是事实是没有太多要分享或谈论的新闻。 谁决定将Java Day Tokyo置于这一年的无聊时间里&#xff0c;谁干得不错&#xff0c;就给我一个机会撰写有关新的和即将到来的Java EE 8规范的博客文章&#xff0c;其中包含了更多的思想和建议。…

全局预处理与执行,作用域与作用域链

一.全局预处理 <!DOCTYPE html><html><head lang"en"><meta charset"UTF-8"><title></title></head><body><p>全局预处理&#xff1a;首先会创建一个词法环境(Lexical Environment),然后扫面全局里…

2090. 「ZJOI2016」旅行者 分治,最短路

2090. 「ZJOI2016」旅行者 链接 loj 思路 \((l,mid)(mid1,r)\).考虑跨过mid的贡献。 假设选的中间那条线的点为gzy,贡献为\(dis(x,gzy)dis(gzy,y)\) 那就计算n遍最短路,一次分治为\(n^2mlog{nm}\) 设Sn*m.矩阵的长度是不定的&#xff0c;每次取最长的边进行分治是最好的&#x…

Xshell连接Linux慢问题解决办法

由于各种原因&#xff0c;经常更换网络环境&#xff0c;然后发现&#xff0c;每次更换网络环境后&#xff0c;xshell连接虚拟机的rhel或者CentOS都几乎是龟速.... 今天专门查了一下解决方案&#xff1a; 原来是ssh的服务端在连接时会自动检测dns环境是否一致导致的&#xff0c;…

Gradle入门:依赖管理

即使不是没有可能&#xff0c;创建没有任何外部依赖关系的现实应用程序也是一项挑战。 这就是为什么依赖性管理是每个软件项目中至关重要的部分的原因。 这篇博客文章描述了我们如何使用Gradle管理项目的依赖关系。 我们将学习配置已使用的存储库和所需的依赖项。 我们还将通过…

牛客NOIP暑期七天营-提高组1

牛客NOIP暑期七天营-提高组1 链接 A 边权可为0就排序建一条链子。 但是边权不为0 除了第一个有0的不行。 x连向上一个比他小的数。 期间判断有无解。 #include <bits/stdc.h> #define ll long long using namespace std; const int _2e57; int read() {int x0,f1;char sg…

BZOJ.4009.[HNOI2015]接水果(整体二分 扫描线)

LOJBZOJ洛谷 又是一个三OJ rank1&#xff01;w \(Description\) &#xff08;还是感觉&#xff0c;为啥非要出那种题目背景啊-直接说不好么&#xff09; 给定一棵树和一个路径集合&#xff08;每条路径有一个权值&#xff09;。\(Q\)次询问&#xff0c;每次询问给定一条路径&am…

HTML5常用标签及特殊字符表

*http://html5doctor.com/nav*http://html5doctor.com/article*http://html5doctor.com/section*http://html5doctor.com/asidehttp://html5doctor.com/divhttp://html5doctor.com/figurehttp://html5doctor.com/outlinehttp://html5doctor.com/semantics p 和 span 的理解 p标…

【转载】使用Imaging组件加载GIF动画

Mobil手机加载GIF动态图像的方法有两种&#xff0c;一个就是使用GIF89a标准算法&#xff0c;另一个就是使用SDK自带的Imaging组件&#xff0c;这两种方法是很典型的手机图像处理技术的实践。使用Imaging组件加载GIF比使用标准算法处理高效的多&#xff0c;特别是在处理真彩GIF动…

在Java中获取素数的无限列表

一个常见的问题是确定数字的素因式分解。 蛮力方法是审判部门&#xff08; 维基百科 &#xff0c; 可汗学院 &#xff09;&#xff0c;但是如果必须考虑多个数字&#xff0c;这需要大量的浪费工作。 一种广泛使用的解决方案是Eratosthenes筛&#xff08; 维基百科 &#xff0c…

CF888G XOR-MST trie,贪心

CF888G XOR-MST 链接 CF888G 思路 trie上贪心&#xff0c;先左右两边连边&#xff0c;再用一条边的代价连起左右两颗树。因为内部的边一定比跨两棵树的边权笑&#xff0c;显然是对的。 代码自己瞎yy的。启发式合并 代码 #include <bits/stdc.h> #define ll long long usi…

【处理手记】Configuration system failed to initialize异常的另类原因

有个c#程序在某台电脑上&#xff0c;执行某个操作时&#xff0c;总是会报如图错误&#xff1a; 度娘一番&#xff0c;发现市面上常见的原因是配置文件中的特定节点的位置不对&#xff0c;或者配置文件损坏等等&#xff0c;而这个程序根本没有使用内置的配置文件方案&#xff0c…

学习《Building Applications with FME Objects》 之四 从数据集读取要素

FMEOReader可以访问任何支持格式的数据。 FMEOReader返回两类要素&#xff1a;schema&#xff08;模式&#xff09;要素和数据要素&#xff0c;模式要素用于描述数据集模型。每种支持的格式都有一个模式&#xff0c;一个模式要素是一类要素的数据模型&#xff0c;模式要素描述属…