一场3天前的cf
啊
这次的cf其实水的(指前4题)

题面就不给了awa
T1其实就是一个贪心,其实手模一下就好了。
可以发现,先让小的那个变大,然后在后面一直让小的加上大的
统计一下次数就是答案了。
因为如果是这样算的话,两次相加,大的那个数加上的数就是a+b,但是如果是单独加一个就是2b,b<a
所以得到了轮流加上这个数一定是更优的。
code
#include<bits/stdc++.h>
#define ll long long
using namespace std;
int a,b,n,T;
inline ll read()
{
char c=getchar();ll a=0,b=1;
for(;c<'0'||c>'9';c=getchar())if(c=='-')b=-1;
for(;c>='0'&&c<='9';c=getchar())a=a*10+c-48;
return a*b;
}
int main()
{
// freopen(".in","r",stdin);
// freopen(".out","w",stdout);
T=read();
while(T--)
{
a=read();b=read();n=read();bool flag=0;
int ans=0;
while(a<=n&&b<=n)
{
if(a<=b)a+=b;
else b+=a;
ans++;
}
cout<<ans<<endl;
}
return 0;
}
T2
就是找一个串,要求里面有>=n个的子串为"codeforces",求这个子串
这个我题面忘记了。。。
T3
简单题,题面不描述了。。
我百度翻译一看。。。
发现它把1e9给我翻译成了109。。。
艹。。。
其实有一个方法能够构造出任意个数的答案,就是因为他能够一个一个的加,大概是这样的

这种情况就是有一个的
下面的是两个的

三个及以上的就直接以此类推就好了
这就是正解了。。。
就是因为那个109.。。
我自己想了好久。。。。
淦
code
#include<bits/stdc++.h>
#define ll long long
using namespace std;
int n;
inline ll read()
{
char c=getchar();ll a=0,b=1;
for(;c<'0'||c>'9';c=getchar())if(c=='-')b=-1;
for(;c>='0'&&c<='9';c=getchar())a=a*10+c-48;
return a*b;
}
int main()
{
// freopen(".in","r",stdin);
// freopen(".out","w",stdout);
n=read();
int ans=4+3*n;
cout<<ans<<endl;
printf("0 0\n0 1\n1 0\n");
for(int i=1;i<=n;i++)
{
cout<<i<<' '<<i<<endl<<i<<' '<<i+1<<endl<<i+1<<' '<<i<<endl;
}
cout<<n+1<<' '<<n+1<<endl;
return 0;
}
T4
其实这就是一个贪心。。。。
我还以为是个数位dp。。。
因为,可以发现,我们如果要做一次变化,那么肯定是要是其中一个数越大越好的
一个是|,一个是&,这个其实就是在把其中的1和零分开。
如果这两个数上的这两个为都是0,那的到的就是两个0
如果一个是一,一个是零,那么,就可以使1到一个数上,0到另一个数上,这两个数一个是富集1的,一个是富集零的
如果两个数都是1,那么就是两个1
所以我们只需要去统计1的数量就好了
code
#include <bits/stdc++.h>
#define ll long long
using namespace std;
inline ll read() {
char c = getchar();
ll a = 0, b = 1;
for (; c < '0' || c > '9'; c = getchar())
if (c == '-')
b = -1;
for (; c >= '0' && c <= '9'; c = getchar()) a = a * 10 + c - 48;
return a * b;
}
ll b[1000001], cnt[10000001], m, a[100001], sum, ans = 0, n;
int main() {
n = read();
for (ll i = 1; i <= n; i++) {
a[i] = read();
for (ll j = 0; j <= 20; j++) {
if ((a[i] >> j) & 1)
b[j]++;
}
}
for (ll i = 1; i <= n; i++) {
ll sum = 0;
for (ll j = 0; j <= 20; j++) {
if (b[j]) {
sum |= (1 << j);
b[j]--;
}
}
ans += sum * sum;
}
cout << ans << endl;
return 0;
}
awa
这就是我写了的题目了
一场3天前的cf的更多相关文章
- 省选前的CF题
RT,即将退役的人懒得一篇篇写题解,于是有了这个东西 CF1004E 树上选一条不超过k个点的链,最小化其余点到链上点的最大距离 这个思路很有意思,不像平时一般的树上问题,是从叶子开始一点点贪心合并直 ...
- MIS2000 Lab,我的IT人生与职场--从零开始的前十五年 与 我的微创业
http://www.dotblogs.com.tw/mis2000lab/archive/2014/09/16/ithome_2014_ironman.aspx [IT邦幫忙]鐵人賽 -- MIS2 ...
- CF 681
我太水了...... 这是一场奇差无比的CF. A,看题意有困难,实际上还是很水的. B,枚举 1234567 和 123456 的个数,时间复杂度1e6以下 C,业界毒瘤模拟题.最TM坑的是还要输出 ...
- 校省选赛第一场C题解Practice
比赛时间只有两个小时,我没有选做这题,因为当时看样例也看不懂,比较烦恼. 后来发现,该题对输入输出要求很低.远远没有昨天我在做的A题的麻烦,赛后认真看了一下就明白了,写了一下,一次就AC了,没问题,真 ...
- CF卡技术详解——笔记
知识太全面了,摘抄摘不完,还是粘过来加上注释和笔记吧. 重点以及断句用加粗,注释用红括号. 一.CF卡技术及规格 一.CF卡技术及规格 1.CF卡简史 随着数码产品的高速普及,近年来闪存卡也进入了高速 ...
- UE4 距离场简单分析
距离上一篇博客已经有点久了,中间忙的飞起,忽然发现很久没写了,这样不好,写一篇和工作无关的吧. 一直想搞清UE4距离场的原理,网上有几乎找不到任何有关UE4距离场实现的内容,加上上篇末说要写一个完全的 ...
- CF Round #510 (Div. 2)
前言:没想到那么快就打了第二场,题目难度比CF Round #509 (Div. 2)这场要难些,不过我依旧菜,这场更是被\(D\)题卡了,最后\(C\)题都来不及敲了..最后才\(A\)了\(3\) ...
- 宋宝华: Linux内核编程广泛使用的前向声明(Forward Declaration)
本文系转载,著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. 作者:宋宝华 来源: 微信公众号linux阅码场(id: linuxdev) 前向声明 编程定律 先强调一点:在一切可 ...
- Codeforces Round #567 (Div. 2)自闭记
嘿嘿嘿,第一篇文章,感觉代码可以缩起来简直不要太爽 打个div2发挥都这么差... 平均一题fail一次,还调不出错,自闭了 又一次跳A开B,又一次B傻逼错误调不出来 罚时上天,E还傻逼了..本来这场 ...
- .NET平台开源项目速览(11)KwCombinatorics排列组合使用案例(1)
今年上半年,我在KwCombinatorics系列文章中,重点介绍了KwCombinatorics组件的使用情况,其实这个组件我5年前就开始用了,非常方便,麻雀虽小五脏俱全.所以一直非常喜欢,才写了几 ...
随机推荐
- BeEF记录
前情提要 最近项目上常规手段遇阻,计划进行水坑钓鱼,一番搜索找到近期SolarMarker组织的手法,但是没有找到相关样本,于是就自己实现了一个类似的前端功能(水坑手法项目会持续记录学习,但目前不会放 ...
- golang 实现四层负载均衡
大家好,我是蓝胖子,做开发的同学应该经常听到过负载均衡的概念,今天我们就来实现一个乞丐版的四层负载均衡,并用它对mysql进行负载均衡测试,通过本篇你可以了解到零拷贝的应用,四层负载均衡的本质以及实践 ...
- 使用libavcodec将mp3音频文件解码为pcm音频采样数据【[mp3float @ 0x561c1ec49940] Header missing】
一.打开和关闭输入文件和输出文件 想要解决上面提到的问题,我们需要对mp3文件的格式有个大致了解,为了方便讲解,我这里画了个示意图: ID3V2 包含了作者,作曲,专辑等信息,长度不固定,扩展了 ID ...
- 阿里云 MongoDB 创建库添加用户并授权
先通过 root 进到 admin 库, 右击test 选择用户管理 测试连接
- 获得 markdown 无序列表格式的文件目录树
tree 命令可以获得文件目录结构,但是放在文档中时,我想用 markdown 无序列表的形式,在编辑器内还可以折叠. 完整解决方案:在 ~/.oh-my-zsh/custom 下添加下述自定义函数( ...
- Blazor前后端框架Known-V1.2.4
V1.2.4 Known是基于C#和Blazor开发的前后端分离快速开发框架,开箱即用,跨平台,一处代码,多处运行. Gitee: https://gitee.com/known/Known Gith ...
- SaaS软件工程师成长路径
背景 SaaS软件工程师的成长需要循序渐进,和SaaS业务一样有耐心.SaaS工程师需要在"业务"."技术"."管理"三个维度做好知识储备. ...
- 一文详解 Okio 输入输出流
在 OkHttp 的源码中,我们经常能看到 Okio 的身影,这篇文章,我们把Okio拿出来进行一个详细的介绍学习. 输入输出的概念简述 Okio 简介 工程中引入 Okio API 简介及使用介绍 ...
- C语言链表实现(郝斌数链表学习笔记)
#include "stdafx.h" #include<stdio.h> #include<stdlib.h> typedef struct Node { ...
- 2021-6-16 TcpIp
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...