Tinkoff Challenge - Final Round (Codeforces Round #414, rated, Div. 1 + Div. 2)
A:
思路:就是找b,c之前有多个s[i]
代码:
#include<stdio.h>
#define ll long long
using namespace std;
ll a,b,c;
int n;
int s[110000];
int main()
{
while(~scanf("%lld%lld%lld",&a,&b,&c))
{
scanf("%d",&n);
int sum=0;
for(int i=0;i<n;i++)
{
scanf("%d",&s[i]);
if(s[i]>b&&s[i]<c)
sum++;
}
printf("%d\n",sum);
}
return 0;
}
B:
题意:把一个等腰三角形分成面积相等的n部分,输出h1,h1+h2,h1+h2+h3,...
思路:先找出第一部分的高h1,然后h1+h2=sqrt(2)*h1,后面每个值都可以通过h1得到。
代码:
#include<stdio.h>
#include<math.h>
#include<stdlib.h>
#include<algorithm>
using namespace std;
int n,h;
double a[1008];
int main()
{
while(~scanf("%d%d",&n,&h))
{
a[0]=h*1.0/sqrt(n);
for(int i=1; i<n-1; i++)
{
a[i]=sqrt(i+1)*a[0];
}
for(int i=0; i<n-1; i++)
i==n-2? printf("%.16f\n",a[i]):printf("%f ",a[i]);
}
return 0;
}
C:
题意:Oleg手中有个字符串a,Igor有个字符串b,他们需要构成一个新的字符串c,Oleg的希望是c这个字符串尽可能的小,lgor的希望是c这个字符串尽可能大。从Oleg开始从a中选一个字符放入c中,然后是lgor。
思路:先将a串从小到大排序,b从大到小,如果n为偶数a选取前n/2+1位,否则a,b都选前n/2位。轮到Oleg放置时比较当前a的最小值与b的最大值,如果是小于就把当前a的最小值放在c的前面部分,否则把当前a的最大值放在c的后面部分。轮到lgor放置时比较当前a的最小值与b的最大值,如果是小于就把b当前的最大值放到c的前面部分,否则把b的最小值放在c的后面部分。
代码:
#include<stdio.h>
#include<string.h>
#include<algorithm>
using namespace std;
char a[300005];
char b[300005];
char c[300005];
int vis[300005];
bool cmp1(char aa,char bb)
{
return aa<bb;
}
bool cmp2(char aa,char bb)
{
return aa>bb;
}
int main()
{
while(~scanf("%s",a+1))
{
scanf("%s",b+1);
int n=strlen(a+1);
sort(a+1,a+n+1,cmp1);
sort(b+1,b+n+1,cmp2);
// puts(a+1);
// puts(b+1);
int k=1;
int t=n;
int jj=n/2;
int ii=n/2;
if(n&1)
ii++;
int i=1;
int j=1;
for(int l=1; l<=n; l++)
{
if(l==n&&(l&1))
c[k++]=a[i++];
if(l&1)
{
if(a[i]<b[j])
c[k++]=a[i++];
else
c[t--]=a[ii--];
}
else
{
if(a[i]<b[j])
c[k++]=b[j++];
else
c[t--]=b[jj--];
}
}
c[n+1]='\0';
puts(c+1);
}
return 0;
}
Tinkoff Challenge - Final Round (Codeforces Round #414, rated, Div. 1 + Div. 2)的更多相关文章
- Tinkoff Challenge - Final Round (Codeforces Round #414, rated, Div. 1 + Div. 2) 继续跪一把
这次的前三题挺简单的,可是我做的不快也不对. A. Bank Robbery time limit per test 2 seconds memory limit per test 256 megab ...
- Tinkoff Challenge - Final Round (Codeforces Round #414, rated, Div. 1 + Div. 2) 【ABC】
老年人题解,语言python3 A - Bank Robbery 题意:给你ABC,以及n个数,问你在(B,C)之间的数有多少个. 题解:对于每个数判断一下就好了嘛 x,y,z = map(int,i ...
- 【构造】Tinkoff Challenge - Final Round (Codeforces Round #414, rated, Div. 1 + Div. 2) D. Labelling Cities
考试的时候想的是,将所有的完全子图缩起来,然后如果剩下的是一条链,依次对其进行标号即可. 看了官方题解,发现完全子图这个条件太强了,缩点的条件仅仅需要保证原本两个点的“邻接表”相同即可.(注意这里的“ ...
- 【贪心】【multiset】Tinkoff Challenge - Final Round (Codeforces Round #414, rated, Div. 1 + Div. 2) C. Naming Company
考虑两个人,先把各自的集合排个序,丢掉一半,因为比较劣的那一半一定用不到. 然后贪心地放,只有两种决策,要么把一个最优的放在开头,要么把一个最劣的放在结尾. 如果我的最优的比对方所有的都劣(或等于), ...
- Tinkoff Challenge - Final Round (ABC)
A题:从两个保安中间那钞票 #include <bits/stdc++.h> using namespace std; int main() { int a,b,c; scanf(&quo ...
- Codeforces Round #412 (rated, Div. 2, base on VK Cup 2017 Round 3)(A.B.C,3道暴力题,C可二分求解)
A. Is it rated? time limit per test:2 seconds memory limit per test:256 megabytes input:standard inp ...
- Codeforces Round #412 (rated, Div. 2, base on VK Cup 2017 Round 3) A B C D 水 模拟 二分 贪心
A. Is it rated? time limit per test 2 seconds memory limit per test 256 megabytes input standard inp ...
- Codeforces 1023 A.Single Wildcard Pattern Matching-匹配字符 (Codeforces Round #504 (rated, Div. 1 + Div. 2, based on VK Cup 2018 Fi)
Codeforces Round #504 (rated, Div. 1 + Div. 2, based on VK Cup 2018 Final) A. Single Wildcard Patter ...
- CF Intel Code Challenge Final Round (Div. 1 + Div. 2, Combined)
1. Intel Code Challenge Final Round (Div. 1 + Div. 2, Combined) B. Batch Sort 暴力枚举,水 1.题意:n*m的数组, ...
随机推荐
- innodb_flush_log_at_trx_commit与sync_binlog理解
innodb_flush_log_at_trx_commit该参数控制重做日志写入磁盘的过程.我们知道 InnoDB 使用“Write Ahead Log”策略来避免数据丢失问题,即依靠重做日志来保证 ...
- pm2管理node
一般直接npm start起的退出命令行就没了,node后台管理工具pm2目前比较流行. npm install -g pm2 pm2 list pm2 start bin/www --name de ...
- Winform导入文件
winfrom的选中文件的路径放进文本框,我还是一个新手,欢迎大家在评论里面多多指教
- servlet3异步原理与实践
一.什么是Servlet servlet 是基于 Java 的 Web 组件,由容器进行管理,来生成动态内容.像其他基于 Java 的组件技术一样,servlet 也是基于平台无关的 Java 类格式 ...
- 2-1 如何抓不同的接口(手机抓包,web网页抓包)
举个例子,一个测试和安卓的对话. 测试:Android你这里有个bug Android:这是服务端的bug 测试:是你这里显示的不对 Android:你去看服务端返回数据,他不对,你会不会测试. 从这 ...
- gitlab 修改root密码
[root@svr34 bin]# gitlab-rails console production Loading production environment (Rails 4.2.5.2) irb ...
- 项目管理-工作量评估 Manday
People's suggestion, 逻辑有待验证 1. Project sponsor - a new request 2. Study the related issue, to define ...
- 修改dll的错误打开方式
一不小心把dll类型的文件的打开方式改成了notepad,查了好多资料因为dll没有打开程序所以怎么也改不回来,只好从注册表中查,经检验修改注册表的以下项目可以改回 计算机\HKEY_CURRENT_ ...
- About certificate
证书spec, X509, 类似规定了一个目录结构.其中重要内容包括 issuer: who isued this certificate subject: the ID of this certif ...
- 移动端各种滚动场景需求的插件better-scroll
移动端各种滚动场景需求的插件: 文档地址: better-scroll:https://ustbhuangyi.github.io/better-scroll/doc/zh-hans/#better- ...