2020.10.9--vj个人赛补题
B - A Tide of Riverscape
题意:给出一组字符串,由‘0’,‘1’,‘ . ’组成,‘ . ’可以换成 0或1,判断第 i 个和第 i+p 个字符是否可以不相等,如果可以则输出满足条件的字符串
题解:先把所有的‘ . ’换成0或1,在判断 i 和i+p 以及i 和 i-p 是否一样,一样则把原来的‘ . ’换成相反的1 或0 ,最后判断是否有一组周期为p的点不同
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,p,i,j;
cin>>n>>p;
string s;
cin>>s;
int k=0;
for(i=0;i<n;i++)
{
if(s[i]=='.')
{
s[i]='0';//将所有的点换成‘0’
if(i+p<n&&s[i+p]=='0'||i-p>=0&&s[i-p]=='0')//判断两点是否一样
s[i]='1';
}
if(i+p<n&&s[i]!=s[i+p])//判断是否有一组周期为p的点不同
{
k=1;
}
}
if(k==1)
{
for(i=0;i<n;i++)
{
cout<<s[i];
}
cout<<endl;
}
else cout<<"No"<<endl; }
题意:计算x^y与y^x的大小,如果两者相减误差非常小则等于输出“=”,如果x^y大于y^x则输出“>",如果小于则输出“<”;
题解:运用对数来比较,都化成以e为底的对数形式,xy = e ln (x^y) = e y(ln x)
也可以使用其他形式的对数函数:
double log (double); 以e为底的对数
double log10 (double);c++中自然对数函数:log(N)
以10为底:log10(N)
但没有以2为底的函数但是可以用换底公式解 决:log2(N)=log10(N)/log10(2)
/*double log (double); 以e为底的对数
double log10 (double);c++中自然对数函数:log(N)
以10为底:log10(N)
但没有以2为底的函数但是可以用换底公式解 决:log2(N)=log10(N)/log10(2)*/
#include<bits/stdc++.h>
using namespace std;
const int esp=1e-9;//误差范围
int main()
{
int x,y;
scanf("%d%d",&x,&y);
double a,b;//x^y: log(x^y)=y*log(x):以e为底的对数
a=log(x)*y;
b=log(y)*x;
if(fabs(a-b)<=esp)cout<<"="<<endl;
else if(a-b>0)cout<<">"<<endl;
else cout<<"<"<<endl; }
题意:
现在是2018年中期,玛丽亚·斯特帕诺夫娜(Maria Stepanovna)住在克拉斯诺卡芒斯克(Krasnokamensk, Zabaikalsky地区的一个小镇)郊外,她想租三个展板来突出一个重要问题。沿道路放置n个显示器,其中第i个显示器只能显示字体大小为si的文本。Maria Stepanovna想要租这样的三种显示器,带有 i<j<k 索引,如果你沿着道路沿着一个特定的方向移动,字体大小就会增加。也就是说,必须遵守 si<sj<sk 的条件。第i个显示器的租金是ci请确定Maria Stepanovna需要支付的最小费用。
第一行包含单个整数n(3≤n≤3000)-显示的数量。
第二行包含n个整数s1,s2,…,sn(1≤si≤109)-显示器上的字体大小,按它们沿道路排列的顺序排列。
第三行包含n个整数c1,c2,…,cn(1≤ci≤108)-每个显示器的租金。
如果没有三个显示满足条件,则打印-1。否则打印一个整数-三个显示器的最低总租金成本指数 i<j<k,使 si<sj<sk。
题解:选取一个中间值进行比较,用min( , )依次选出第一个和最后一个符合条件的,最后选出总和最小的
#include<bits/stdc++.h>
#define ll long long
using namespace std;
const ll N = 3e3 + 100;
const int maxn = 0x3f3f3f3f;
ll dp[N];
ll c[N];
int main() {
int n;
cin>>n;
ll i,a,b,z,j;
for(i=0;i<n;i++)
{
scanf("%lld",&dp[i]);
}
for(i=0;i<n;i++)scanf("%lld",&c[i]);
z=maxn;
ll k;
for(i=0;i<n;i++)
{
a=b=maxn;
for(j=0;j<i;j++)
{
if(dp[i]>dp[j])a=min(a,c[j]);
}
for(k=i+1;k<n;k++)
{
if(dp[k]>dp[i])b=min(b,c[k]);
}
z=min(z,c[i]+a+b);
}
if(a==maxn)cout<<"-1"<<endl;
else printf("%lld\n",z);
}
2020.10.9--vj个人赛补题的更多相关文章
- 2020.10.17-pta天梯练习赛补题
7-5敲笨钟 微博上有个自称"大笨钟V"的家伙,每天敲钟催促码农们爱惜身体早点睡觉.为了增加敲钟的趣味性,还会糟改几句古诗词.其糟改的方法为:去网上搜寻压"ong&quo ...
- 2020.10.30--vj个人赛补题
D - D CodeForces - 743A Vladik is a competitive programmer. This year he is going to win the Interna ...
- 2020.10.16--vj个人赛补题
D - Drinks Choosing Old timers of Summer Informatics School can remember previous camps in which eac ...
- 2020.10.23-vj个人赛补题
B - B Polycarp loves lowercase letters and dislikes uppercase ones. Once he got a string s consistin ...
- QFNU-ACM 2020.04.05个人赛补题
A.CodeForces-124A (简单数学题) #include<cstdio> #include<algorithm> #include<iostream> ...
- 2020.12.3--vj个人赛补题
A Vasya studies music.He has learned lots of interesting stuff. For example, he knows that there are ...
- 2020.12.20-Codeforces Round #105补题
B - Escape The princess is going to escape the dragon's cave, and she needs to plan it carefully. Th ...
- 牛客 2020.10.20 TG 前两题
T1 GCD 数学水题... 对于每个数,如果这个数有两个及以上的质因数的话,它所有除 \(1\) 之外的因数求 \(GCD\) 的值一定为 \(1\).那么判断是否是质数或质数的次方即可(质数除 \ ...
- 2020.11.14-pta天梯练习赛补题
7-7 矩阵A乘以B 给定两个矩阵A和B,要求你计算它们的乘积矩阵AB.需要注意的是,只有规模匹配的矩阵才可以相乘.即若A有Ra行.Ca列,B有Rb行.Cb列,则只有Ca ...
随机推荐
- js在不同页面的导航背景不同 (设置网站公共头的导航)
<script type="text/javascript" src="js/jquery.min.js"></script> < ...
- 【详细、开箱即用】.NET企业微信回调配置(数据回调URL和指令回调URL验证)
前言: 前段时间因为公司业务需求,需要将微信小程序与企业微信对接通,也就是把小程序绑定到对应的企业微信账号下,在该企业微信的用户可以将该小程序绑定到工作台中,然后可以在工作台中打开该小程序并授权.不过 ...
- uniapp 封装 request 并 配置跨域,( 本地 + 线上 + 封装 )
找到上面这个 文件,不管是用 命令创建 还是 用 HBX 创建,都一样会有这个文件的,然后跟着截图复制粘贴就好了. // 这是配置本地能跨域的,或者你可以直接让后端给你设置请求头,避免了跨域. &qu ...
- CodeReview杂谈
豆皮粉儿们,大家好,又见面啦,今天由字节跳动的"躬冯"带来一个 code review 的故事. 作者:躬冯 2020年元旦假期到来的时候,孙总攒了个局,又把当年一起创造过屎山的咱 ...
- 【曹工杂谈】说说Maven框架和插件的契约
说说Maven框架和插件的契约 前言 Maven框架就像现在公司内的各种平台方,规定一些契约,然后想办法拉动业务方,一起在这个平台上去做生态共建.Maven也是这样,其实它就是一个插件执行的框架,Ma ...
- 区间DP的瞎扯淡
写在前面连个引言都不加就直接开1. 区间DP状态常见模板: f[i][j]常常表示第i个到第j个这个区间内达到题目要求,所需要的最小值(最大值) 如: 1. [石子合并](https://www.lu ...
- QT程序打包成多平台可执行文件
一.简述 QT项目开发完成后,需要打包发布程序,在实际生产中不可能把源码发给别人,所以需要将源码打包正可执行文件或者安装程序. 二.设置应用图标 把 ico 文件放到源代码目录下,在QT项目中的'.p ...
- Linux的基础命令(一)
目录: 一.Linux系统基础 1.shell 2. Linux命令的分类 二.Linux命令行 1.Linux命令行提示符 2.Linux通用命令行使用格式 3.Lin ...
- 【曹工杂谈】Maven IOC 容器-- Guice内部有什么
Google Guice容器内部有什么 前言 Maven系列,好几天没写了,主要是这几天被Google Guice卡住了,本来是可以随便带过Guice,讲讲guice的用法就够了(这个已经讲了,在前面 ...
- PHP的zip压缩工具扩展包学习
总算到了 PHP 的拿手好戏上场了,前面我们学习过 Bzip2 . LZF . Phar 和 rar 这些压缩相关扩展在 PHP 中的使用,不过它们要么是太冷门,要么就是很多功能不支持.而 Zip 则 ...