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)的更多相关文章

  1. 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 ...

  2. 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 ...

  3. 【构造】Tinkoff Challenge - Final Round (Codeforces Round #414, rated, Div. 1 + Div. 2) D. Labelling Cities

    考试的时候想的是,将所有的完全子图缩起来,然后如果剩下的是一条链,依次对其进行标号即可. 看了官方题解,发现完全子图这个条件太强了,缩点的条件仅仅需要保证原本两个点的“邻接表”相同即可.(注意这里的“ ...

  4. 【贪心】【multiset】Tinkoff Challenge - Final Round (Codeforces Round #414, rated, Div. 1 + Div. 2) C. Naming Company

    考虑两个人,先把各自的集合排个序,丢掉一半,因为比较劣的那一半一定用不到. 然后贪心地放,只有两种决策,要么把一个最优的放在开头,要么把一个最劣的放在结尾. 如果我的最优的比对方所有的都劣(或等于), ...

  5. Tinkoff Challenge - Final Round (ABC)

    A题:从两个保安中间那钞票 #include <bits/stdc++.h> using namespace std; int main() { int a,b,c; scanf(&quo ...

  6. 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 ...

  7. 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 ...

  8. 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 ...

  9. 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的数组, ...

随机推荐

  1. 搭建vue脚手架

    1.Node.js安装 1.1下载安装 在node.js 官网下载, 根据自己电脑系统安装,一直点下一步即可 1.2测试安装是否成功 Windows+R打开cmd窗口,输入node -v回车出现版本号 ...

  2. Laravel 5 速查表

    Artisan // 在版本 5.1.11 新添加,见 http://d.laravel-china.org/docs/5.1/authorization#creating-policiesphp a ...

  3. paloalto防火墙的优势

    1.所有 Palo Alto Networks 防火墙提供一个可用于执行防火墙管理功能的带外管理端口 (MGT).通过使用该 MGT 端口,可以将防火墙的管理功能与数据处理功能分开,从而保护对防火墙的 ...

  4. Eclipse常用快捷键--摘录他人

    Eclipse常用快捷键 1几个最重要的快捷键 代码助手:Ctrl+Space(简体中文操作系统是Alt+/) 快速修正:Ctrl+1 单词补全:Alt+/ 打开外部Java文档:Shift+F2显示 ...

  5. MathExam Lv2

    一个大气又可爱的算术题----211606360 丁培晖 211606343 杨宇潇 一.预估与实际 PSP2.1 Personal Software Process Stages 预估耗时(分钟) ...

  6. 快速排序的两种实现方法(js)

    快速排序的基本思想:通过一趟排序,将待排记录分割成独立的两部分,其中一部分记录的关键字均比另外一部分记录的关键字小,则可分别对着两部分记录继续进行排序,以达到整个序列有序的目的.----------- ...

  7. 24. pt-slave-find

    pt-slave-find --host 192.168.100.101 --port 3306 --user admin --password admin [root@server01 test]# ...

  8. mysql 数据库导入导出方法总结

    一般形式:mysqldump -h IP -u 用户名 -p 数据库名 > 导出的文件名 (1)-p 后面不能加password,只能单独输入如1中那样 (2)mysqldump是在cmd下的命 ...

  9. python基础之Day20part2

    面向过程:核心是过程,解决问题的步骤,先干嘛后干嘛,机械流水线 复杂问题流程化简单化但扩展性差 面向对象:核心是对象,是特征与对象的集合体,基于该思想编写程序,就好比上帝造世界,上帝式的思维方式 扩展 ...

  10. create-react-app创建项目并用git上传至GitHub及展示预览效果

    1.在本地中创建一个项目所在的文件夹 2.npm -g create-react-app 3.在此文件夹下 create-react-app react-demo (项目名) 4.cd react-d ...