Codeforces Round #606 (Div. 2, based on Technocup 2020 Elimination Round 4)
签到题,求出位数,然后9*(位数-1)+ 从位数相同的全一开始加看能加几次的个数
#include<bits/stdc++.h>
using namespace std;
int main(int argc, char const *argv[])
{
int t;
int y;
cin>>t;
int ans = 0;
while(t--)
{
cin>>y;
ans = 0;
int weishu = 0;
int temp = y;
while(temp>0)
{
weishu++;
temp/=10;
}
ans += (weishu-1)*9;
temp = 1;
for (int i = 1; i < weishu; ++i)
{
temp = temp*10+1;
}
for (int i = temp; i <= y; i += temp)
{
ans++;
}
cout<<ans<<endl;
}
return 0;
}
思路,用堆来维护所有的偶数,每次取最大的来除以二,但是需要在处理的时候去重。用STL的优先队列就可
#include<bits/stdc++.h>
using namespace std;
int main(int argc, char const *argv[])
{
//数的数量啊
//排序一波?
priority_queue<int> q;
int t;
cin>>t;
while(t--)
{
int n;
cin>>n;
int num;
int flag = 0;
for (int i = 0; i < n; ++i)
{
cin>>num;
if (!(num%2)) //不是奇数,插入就行
{
q.push(num);
flag++;
}
}
if(flag)
{
int top = q.top();
int ans = 0;
int cur = 0;
q.pop();
ans++;
if (!((top/2)%2))
{
q.push(top/2);
}
while(!q.empty())
{
cur = q.top();
//cout<<cur<<endl;
q.pop();
if (cur == top)
continue;
else //不是重复了哈
{
top = cur;
ans++;
if (!((top/2)%2))
{
q.push(top/2);
}
}
}
cout<<ans<<endl;
}
else
cout<<"0"<<endl;
}
return 0;
}
思考一下,因为two和one,是可能出现连起来出现的,所以先扫描一遍所有的twone这种的,去掉中间的o,然后再扫描一次把剩下的one和two
去掉中间那个字母就行。
#include<bits/stdc++.h>
using namespace std;
char s[150001];
int del[150001];
int main(int argc, char const *argv[])
{
ios::sync_with_stdio(false);
std::vector<int> a;
int t;
cin>>t;
while(t--)
{
cin>>s;
int ans = 0;
a.clear();
//memset(del, 0, sizeof(del));
int len = strlen(s);
for (int i = 0; i < len; ++i)
{
del[i]=0;
}
for (int i = 2; i < len-2; ++i)
{
if (s[i]=='o')
{
if (s[i-2]=='t'&&s[i-1]=='w'&&s[i+1]=='n'&&s[i+2]=='e')
{
//s.erase(i,1);
a.push_back(i+1);
del[i] = 1;
//cout<<i<<" ";
++ans ;
}
}
}
for (int i = 1; i <=len-2; ++i)
{
if (s[i]=='w')
{
if (s[i-1]=='t'&&s[i+1]=='o'&&!del[i+1])
{
del[i]=1;
a.push_back(i+1);
++ans;
//cout<<i<<" ";
}
}
if (s[i]=='n')
{
if (s[i-1]=='o'&&s[i+1]=='e'&&!del[i-1])
{
del[i]=1;
a.push_back(i+1);
++ans;
//cout<<i<<" ";
}
}
}
cout<<ans<<endl;
for (int i = 0; i < ans; ++i)
{
cout<<a[i]<<' ';
}
cout<<endl;
}
return 0;
}
未完待续~
Codeforces Round #606 (Div. 2, based on Technocup 2020 Elimination Round 4)的更多相关文章
- 【cf比赛记录】Codeforces Round #606 (Div. 2, based on Technocup 2020 Elimination Round 4)
比赛传送门 只能说当晚状态不佳吧,有点头疼感冒的症状.也跟脑子没转过来有关系,A题最后一步爆搜没能立即想出来,B题搜索没有用好STL,C题也因为前面两题弄崩了心态,最后,果然掉分了. A:简单数学 B ...
- 20191214 Codeforces Round #606 (Div. 2, based on Technocup 2020 Elimination Round 4)
概述 切了 ABCE,Room83 第一 还行吧 A - Happy Birthday, Polycarp! 题解 显然这样的数不会很多. 于是可以通过构造法,直接求出 \([1,10^9]\) 内所 ...
- Codeforces Round #606 (Div. 2, based on Technocup 2020 Elimination Round 4) 题解
Happy Birthday, Polycarp! Make Them Odd As Simple as One and Two Let's Play the Words? Two Fairs Bea ...
- Codeforces Round #596 (Div. 2, based on Technocup 2020 Elimination Round 2)
A - Forgetting Things 题意:给 \(a,b\) 两个数字的开头数字(1~9),求使得等式 \(a=b-1\) 成立的一组 \(a,b\) ,无解输出-1. 题解:很显然只有 \( ...
- Codeforces Round #602 (Div. 2, based on Technocup 2020 Elimination Round 3
A,有多个线段,求一条最短的线段长度,能过覆盖到所又线段,例如(2,4)和(5,6) 那么我们需要4 5连起来,长度为1,例如(2,10)(3,11),用(3,10) 思路:我们想一下如果题目说的是最 ...
- Codeforces Round #596 (Div. 2, based on Technocup 2020 Elimination Round 2) D. Power Products
链接: https://codeforces.com/contest/1247/problem/D 题意: You are given n positive integers a1,-,an, and ...
- Codeforces Round #596 (Div. 2, based on Technocup 2020 Elimination Round 2) C. p-binary
链接: https://codeforces.com/contest/1247/problem/C 题意: Vasya will fancy any number as long as it is a ...
- Codeforces Round #596 (Div. 2, based on Technocup 2020 Elimination Round 2) B2. TV Subscriptions (Hard Version)
链接: https://codeforces.com/contest/1247/problem/B2 题意: The only difference between easy and hard ver ...
- Codeforces Round #596 (Div. 2, based on Technocup 2020 Elimination Round 2) A. Forgetting Things
链接: https://codeforces.com/contest/1247/problem/A 题意: Kolya is very absent-minded. Today his math te ...
随机推荐
- Python升级PIP
用pip list的时候.发现最后有两行黄颜色的.提示你可以用‘python -m pip install --upgrade pip’升级你的pip 当时我直接就复制粘贴上去运行了.但是报了一堆红的 ...
- HTML5常见的取值与单位
HTML5常见的取值与单位 长度单位包括 相对长度单位包括:em, ex, ch, rem, vw, vh, vmax, vmin 绝对长度单位包括:cm, mm, q, in, pt, pc ...
- 05_javaSE面试题:成员变量和局部变量
题目 /** * 类变量:static修饰的 * 实例变量:不是static修饰的 * * 局部变量:栈 * 实例变量:堆 * 类变量:方法区 * @author kevin * @date 2019 ...
- <Array> 309 (高)334
309. Best Time to Buy and Sell Stock with Cooldown class Solution { public int maxProfit(int[] price ...
- HTML连载50-伪元素选择器、清除浮动方式五
一.伪元素选择器 1.什么是伪元素选择器 伪元素选择器作用给指定标签的内容前面添加一个子元素,或者给指定标签的内容后面添加一个子元素. 2.格式: 标签名称::before{ 属性名称:值: } 给指 ...
- python笔记:配置虚拟开发环境
问题 有的时候开发不同的业务,所需要的环境不一样.一直在同一个环境中开发时候,不同的包版本升级可能会导致另外的业务不能正常工作.另外,有的github上的项目需要的开发环境与你使用的环境不同,冒然的按 ...
- Vue自定义指令使用方法详解 和 使用场景
Vue自定义指令的使用,具体内容如下 1.自定义指令的语法 Vue自定义指令语法如下: Vue.directive(id, definition) 传入的两个参数,id是指指令ID,definitio ...
- 在新的电脑上的Git本地库 与远程库关联前的一些设置
由于你的本地Git仓库和GitHub仓库之间的传输是通过SSH加密的,所以,需要一点设置: 第1步:创建SSH Key.在用户主目录下(user/...),看看有没有.ssh目录,如果有,再看看这个目 ...
- Java设计模式:Factory Method(工厂方法)模式
概念定义 工厂方法(Factory Method)模式,又称多态工厂(Polymorphic Factory)模式或虚拟构造器(Virtual Constructor)模式.工厂方法模式通过定义工厂抽 ...
- Python中字符的编码与解码
1 文本和字节序列 我们都知道字符串,就是由一些字符组成的序列构成串,那么字符又是什么呢?计算机只能识别二进制的东西,那么计算机又为什么会显示我们的汉字,或者是某个字母呢? 由于最早发明使用计算机是美 ...



