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; }

E - High School: Become Human

题意:计算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; }

F - Three displays

题意:

现在是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个人赛补题的更多相关文章

  1. 2020.10.17-pta天梯练习赛补题

    7-5敲笨钟 微博上有个自称"大笨钟V"的家伙,每天敲钟催促码农们爱惜身体早点睡觉.为了增加敲钟的趣味性,还会糟改几句古诗词.其糟改的方法为:去网上搜寻压"ong&quo ...

  2. 2020.10.30--vj个人赛补题

    D - D CodeForces - 743A Vladik is a competitive programmer. This year he is going to win the Interna ...

  3. 2020.10.16--vj个人赛补题

    D - Drinks Choosing Old timers of Summer Informatics School can remember previous camps in which eac ...

  4. 2020.10.23-vj个人赛补题

    B - B Polycarp loves lowercase letters and dislikes uppercase ones. Once he got a string s consistin ...

  5. QFNU-ACM 2020.04.05个人赛补题

    A.CodeForces-124A (简单数学题) #include<cstdio> #include<algorithm> #include<iostream> ...

  6. 2020.12.3--vj个人赛补题

    A Vasya studies music.He has learned lots of interesting stuff. For example, he knows that there are ...

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

  8. 牛客 2020.10.20 TG 前两题

    T1 GCD 数学水题... 对于每个数,如果这个数有两个及以上的质因数的话,它所有除 \(1\) 之外的因数求 \(GCD\) 的值一定为 \(1\).那么判断是否是质数或质数的次方即可(质数除 \ ...

  9. 2020.11.14-pta天梯练习赛补题

    7-7 矩阵A乘以B 给定两个矩阵A和B,要求你计算它们的乘积矩阵AB.需要注意的是,只有规模匹配的矩阵才可以相乘.即若A有R​a​​行.C​a​​列,B有R​b​​行.C​b​​列,则只有C​a​​ ...

随机推荐

  1. Linux 单实例oracle安装步骤

    一.查看逻辑盘大小,执行 lsblk 二.查看硬盘及分区信息 ,执行 fdisk -l 三.将物理硬盘分区初始化为物理卷,以便LVM使用 ,创建pv pvcreate /dev/sdb 四.查看物理卷 ...

  2. JS 根据文件路径获取名字和后缀名

    var fileName = this.from.doc.substring(this.from.doc.lastIndexOf('/')+1); //文件名           var extNam ...

  3. kubernetes 安装 ingress controller

    文章链接 ingress-nginx ingress 官方网站 ingress 仓库地址 ingress-nginx v1.0 最新版本 v1.0 适用于 Kubernetes 版本 v1.19+ ( ...

  4. list类型数据的操作指令

    1. 结果是 3 2 1 还可以继续追加如下: 2. 3. 4.删除表头元素(最左侧的元素),并返回该元素 5. 6. 7.删除表尾的元素(最右侧的元素),并返回该元素 8.

  5. HCNP Routing&Switching之动态路由协议IS-IS基础

    前文我们了解了OSPF的特殊区域相关话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/15236330.html:今天我们来聊一聊另一动态路由协议IS-IS相 ...

  6. github上使用C语言实现的线程池

    网上介绍线程池的知识很多,但是在代码实现上介绍的又不是那么多.而且给人的一种感觉就是:你的这种实现是正规的方式还是你自己的实现? 如果有这么个疑问,且想找一个靠谱的代码拿来使用,那么这个项目是个不错的 ...

  7. key存活时间和五个类型通用的一些指令操作

    一.设置key的存活时间 1.失效后 ttl 是 -2,get返回 null : 2.不设置存活时候 ttl 返回是 -1: 二.查找指令和删除指令.重命名key.查看key类型 1.模糊查询 2.严 ...

  8. 常量&&变量

    一.常量:程序运行期间不变 常量使用: 二.八大基本数据类型变量: 其中,一个Byte类型数据占八个bit位,所以范围是(-2^7 ~ 2^7-1),数据最小的存储单位,是四分之一的int类型空间,所 ...

  9. python win32com 处理excle 写一个公共的类

    利用win32com处理excle,这样可以不管文件是老的xls还是新的xlsx格式,非常方便. 类的源码如下: import win32com.client as win32 class easyE ...

  10. Windows难民安装docker的注意事项

    Windows下如何安装docker,这个没啥可说的,一直下一步就ok Windows  docker 下载地址: https://download.docker.com/win/stable/Doc ...