SDNU_ACM_ICPC_2020_Winter_Practice_4th
H - Triangle
思路:
用了斐波那契数列,因为数列中的任意三数都无法组成三角形,所以将1,2,3,,,n变成斐波那契数列就符合条件;
#include <iostream>
using namespace std;
int main()
{
int t,n,a,sum=,f[]={,,,,,};
cin>>t;a=t; while(t--)
{
cin>>n;
sum=;
for(int i=;i<;i++)
{
if(n>=f[i])
sum++;
}
cout<<"Case #"<<a-t<<": ";
cout<<n-sum;
cout<<endl;
} }
K - Reverse a Substring
思路:先将字符串升序排序,与原字符串比较大小,若大于等于原字符串,则说明原字符串已经是字典序最小的排列方式;否则,逐一比较两字符串中元素,不同者,输出;
#include <iostream>
#include <algorithm>
#include <string>
using namespace std;
int main()
{
int n;
char s[],m[];
cin>>n;
for(int i=;i<n;i++)
{
cin>>s[i];
m[i]=s[i];
}
sort(m,m+n);
for(int i=;i<n;i++)
{
if(m[i]<s[i])
{
cout<<"YES"<<endl<<i+<<" ";
for(int j=i+;j<n;j++)
{
if(s[j]==m[i])
{
cout<<j+<<endl;
return ;
}
}
}
}
cout<<"NO"; }
L - Game with Telephone Numbers
注意:第11行,s[i]=='8' 而不是 s[i]==8
#include <iostream>
#include <string>
using namespace std;
int main()
{
int n,t=;
string s;
cin>>n>>s;
for(int i=;i<=n-;i++)
{
if(s[i]=='')
{
t++;
}
}
if(t<=(n-)/)
cout<<"NO";
else
cout<<"YES";
}
I - Birthday Paradox
长知识了

因此,所有人生日不同的概率为(天数-1)/天数*(天数-2)/天数*....(天数-n+1)/n;
#include <iostream>
#include <algorithm>
#include <cstdio>
using namespace std;
int main()
{
int t,n,K;
cin>>t;
int a=;
while(t--)
{
double sum=1.0;
cin>>n;
for(int i=;i<=n;i++)
{
sum*=(n-i)*1.0/n;
if(sum<=0.5)
{
K=i;
break;
}
}
cout<<"Case "<<a++<<": "<<K<<endl;
}
}
SDNU_ACM_ICPC_2020_Winter_Practice_4th的更多相关文章
随机推荐
- 三分钟快速上手TensorFlow 2.0 (中)——常用模块和模型的部署
本文学习笔记参照来源:https://tf.wiki/zh/basic/basic.html 前文:三分钟快速上手TensorFlow 2.0 (上)——前置基础.模型建立与可视化 tf.train. ...
- Android开发 UI布局
Android开发 UI布局一.线性布局LinearLayout 什么是线性布局? 其实呢,线性布局就是把所有的孩子摆在同一条线上 <?xml version="1.0" e ...
- spring(一):思维导图
- C++-POJ1988-Cube Stacking[数据结构][并查集]
int find(int x){return fa[x]==x?x:fa[x]=find(fa[x]);} #include <set> #include <map> #inc ...
- C++-POJ2352-Stars[数据结构][树状数组]
/* 虽然题目没说,但是读入有以下特点 由于,输入是按照按照y递增,如果y相同则x递增的顺序给出的 所以,可以利用入读的时间进行降为处理 */ 于是我们就得到了一个一维的树状数组解法啦 值得一提:坐标 ...
- JAVA变量声明在循环体内还是循环体外
(1) for (int i = 0; i < 10000; ++i) { Object obj = new Object(); System.out.println("obj= &q ...
- win10显示“没有有效的IP地址”
可能你没有新建该宽带连接!!!(本人就是蠢到如此地步了_(:з)∠)_)
- 每天进步一点点------Allegro 修线
Allegro中修线的方法有很多种,这里重点介绍走线的移动和走线的替换,掌握这两种方法,基本可以完成电路板的修线工作. 走线的移动 第1步:执行菜单命令Route->Slide,进入移动走线命 ...
- 【转载】Java泛型(一)
转自:http://www.cnblogs.com/lzq198754/p/5780426.html 1.为什么需要泛型 泛型在Java中有很重要的地位,网上很多文章罗列各种理论,不便于理解,本篇将立 ...
- Multisim 中的一些快捷键
1.镜像 Alt + Y 2.左转90° Ctrl + L 3.右转90° Ctrl + R