Contest1893 - 2019年6月多校联训b层测试1
传送门 密码:waxadyt
T1
暴力
对于任意相邻的两个值
中间能到达的最大高度是固定的
加上头尾,判一下就好了
代码//感谢Th Au K
#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define ull unsigned long long
#define db double
#define N 2000100
#define jd (isdigit(c))
#define gg c=getchar()
#define inf 233333333333333
#define eps 1e-10
#define mod 12345678910
#define ls k<<1
#define rs k<<1|1
#define root t[0].ch[1]
inline ll read()
{
ll f=;bool x=;char gg;
for(;!jd;gg)if(c=='-')x=;
for(;jd;gg)f=(f<<)+(f<<)+(c&);
return x?f:-f;
}
inline void write(ll x)
{
if(!x)putchar('');
else
{
if(x<)putchar('-'),x=-x;
char s[];
int j=;
for(;x;x/=)s[j++]=x%;
for(int i=j-;~i;i--)putchar(s[i]+);
}
putchar('\n');
}
ll n,m,ans;
struct dia
{
ll d,h;
}d[N];
int main()
{
n=read(),m=read();
for(int i=;i<=m;i++)d[i].d=read(),d[i].h=read();
ans=d[].h+d[].d-;
for(int i=;i<=m;i++)
{
if(d[i].h-d[i-].h>d[i].d-d[i-].d)
{
puts("IMPOSSIBLE");
return ;
}
ll h1=max(d[i].h,d[i-].h),h2=min(d[i].h,d[i-].h);
ll dd=h1-h2;
ll t=(d[i].d-d[i-].d-dd)/+h1;
ans=max(ans,t);
}
ll t=d[m].h+(n-d[m].d);
write(max(ans,t));
return ;
}
T1
T2
枚举dx和dy
判一下
打个标记
O(n^4)秒过
代码
#include<bits/stdc++.h>
using namespace std;
int a[][];
int vis[][];
int x[],y[],num,n;
int ans[][];
inline void get(int xx,int yy)
{
char c=getchar();
for(;;c=getchar())
{
if(c=='x')
{
a[xx][yy]=;
return;
}
if(c=='.')
{
a[xx][yy]=;
return;
}
if(c=='o')
{
x[++num]=xx;
y[num]=yy;
a[xx][yy]=;
return;
}
}
}
inline bool check(int xx,int yy)
{
for(int i=;i<=num;i++)
{
int nx=x[i]+xx,ny=y[i]+yy;
if((nx>)&&(nx<=n)&&(ny>)&&(ny<=n))
{
if(!a[nx][ny])return ;
}
}
return ;
}
inline void make(int xx,int yy)
{
for(int i=;i<=num;i++)
{
int nx=x[i]+xx,ny=y[i]+yy;
if((nx>)&&(nx<=n)&&(ny>)&&(ny<=n))
{
vis[nx][ny]=;
}
}
}
int main()
{
scanf("%d",&n);
for(int i=;i<=n;i++)
{
for(int j=;j<=n;j++)
{
get(i,j);
}
}
for(int i=-n+;i<=n-;i++)
{
for(int j=-n+;j<=n-;j++)
{
if(check(i,j))
{
make(i,j);
ans[i+n][j+n]=;
}
}
}
for(int i=;i<=n;i++)
{
for(int j=;j<=n;j++)
{
if(a[i][j]&&(!vis[i][j]))
{
puts("NO");
return ;
}
}
}
puts("YES");
for(int i=;i<=(n<<)-;i++)
{
for(int j=;j<=(n<<)-;j++)
{
if((i==n)&&(j==n))putchar('o');
else if(ans[i][j])putchar('x');
else putchar('.');
}
putchar('\n');
}
}
T2
T3
数学好题
ans=pow(k,k-1)*pow(n-k,n-k)
代码
#include<bits/stdc++.h>
using namespace std;
const long long mod=1e9+;
const long long phi=1e9+;
inline long long pow(long long a,long long b)
{
long long ans=;
b%=phi;
a%=mod;
while(b)
{
if(b&)ans=(ans*a)%mod;
a=(a*a)%mod;
b>>=;
}
return ans;
}
int main()
{
long long n,k;
scanf("%lld%lld",&n,&k);
printf("%lld",(pow(k,k-)*pow(n-k,n-k))%mod);
}
T3
Contest1893 - 2019年6月多校联训b层测试1的更多相关文章
- Visual Studio 2019 发布活动 - 2019 年 4 月 2 日
Visual Studio 2019 发布活动 2019 年 4 月 2 日,星期二 | 上午 9:00 (PT) 围观: https://visualstudio.microsoft.com/zh- ...
- 西安活动 | 2019年1月13号 "拥抱开源, 又见.NET" 线下交流活动报名进行中
随着.NET Core的发布和开源,.NET又重新回到人们的视野..NET Core的下个3.0即将release,加入非常多的新功能,越来越拥抱变化,DevOps和Microservice的最佳实践 ...
- 2019年3月29日至30日深圳共创力《成功的产品经理DNA》在深圳公开课成功举办
2019年3月29至30日,在深圳南山区中南海滨大酒店10楼行政厅,由深圳市共创力企业管理咨询有限公司举办的<成功的产品经理DNA>公开课成功举办,此次公开课由深圳市共创力咨询资深讲师冯老 ...
- 2019年6月pmp考试马上开始!报考9月怎么进行中文报名?
2019年6月pmp考试马上开始了,现在还可不可以报名参加考试呢?来不来得及呢?怎么进行中文报名,考点在哪里?如果现在想报考9月怎么进行中文报名?下面慧翔天地就给大家分享! (关于甘特图的画法,项目管 ...
- 2019 年 3 月 iOS程序员面试心得总结,请大家多多指教!
序言: 今年2月中下旬因为个人原因,换了一份工作,3月初期间面试了有3,4家,基本都是D轮或者刚刚上市的公司,也有上榜的BAT,也从他们的面试笔试中看到了自己的一些不足,于是就想写出来和大家分享一下, ...
- 2019年5月1日起安卓应用应基于API 26开发,那么API等级是啥?
2019年5月1日起安卓应用应基于API 26开发,那么API等级是啥? 转 https://www.ithome.com/html/android/372234.htm 据泰尔终端实验室公众微信 ...
- 2019年3月2日-小雨.md
2019年3月2日, 星期六 开学已经一周了,时间好像限制了自己进步的脚步,一个人的精力有限,想做好方方面面实在是太难了,有很多事儿最后都没做的完美.相反,自己应该放下繁琐的包袱,简简单单的干一件事儿 ...
- 黑洞有毛 or 黑洞无毛:4星|《环球科学》2019年03月号
<环球科学>2019年03月号 高水平的科普杂志.本期我感兴趣的话题有: 1:65岁以上老年人是转发假新闻的主力: 2:人的面孔特征可以通过50个维度来定义: 3:华裔科学家发现人脑颞叶中 ...
- 001-电脑操作规范-2019年03月.doc
001-电脑操作规范-2019年03月.doc 本文作者:徐晓亮 BoAi 作者腾讯QQ号码:595076941 /////////////////////////////////////// ...
随机推荐
- Java调用webservice接口方法(SOAP message、xfire、axis)
webservice的 发布一般都是使用WSDL(web service descriptive language)文件的样式来发布的,在WSDL文件里面,包含这个webservice暴露在外面可供使 ...
- Java Annotation使用详解
Java Annotation是JDK5.0引入的一种注释机制.它与注释有一定区别,可以理解为代码上的特殊标记,通过这些标记我们可以在编译,类加载,运行等程序类的生命周期内被读取.执行相应的处理.通 ...
- windows下php7.1.5、mysql环境搭建
php http://windows.php.net/download/ 如果是使用ISAPI的方式来运行PHP就必须用Thread Safe(线程安全)的版本:而用FastCGI模式运行PHP的话就 ...
- [Rails学习之路]初识Ruby(二)
继续上次Ruby的学习.接下来就到了Ruby的方法. Ruby的方法与Python仍然很像.使用def定义,可以使用undef取消定义. 在Ruby中,经常可以看见方法后面跟有"?" ...
- POJ 3614 Sunscreen(贪心,区间单点匹配)
把牛的SPF看作一个区间,防晒霜看作点.一个点可以匹配C[i]次,问最大匹配数.可以用图论做. 也可以贪心.贪心的思想是,把区间和点排序以后,考虑最左边的点,加入和这个点相交的区间, 并排除出界的区间 ...
- 【BZOJ4458】GTY的OJ(树上超级钢琴)
点此看题面 大致题意: 给你一棵树,让你求出每一个节点向上的长度在\([l,r]\)范围内的路径权值和最大的\(m\)条路径的权值总和. 关于此题的数列版本 此题的数列版本,就是比较著名的[BZOJ2 ...
- 【51nod1743】雪之国度(最小生成树+倍增)
点此看题面 大致题意: 给你一张无向连通图,其中每条边的边权为这条边连接的两点的权值之差.每次询问两点之间是否存在两条不重复的路径,若存在则输出这两条路径上最大值的最小值. 大致思路 这题显然就是要让 ...
- vue安装环境
vue安装环境 1. 安装node.js 先在电脑上安装node.js, https://nodejs.org/en/ 可以点击链接安装. 安装成功后,在命令板里检测是否安装成功, node -v 2 ...
- subline 安装 package control
subline text2 输入 import urllib2,os,hashlib; h = '2915d1851351e5ee549c20394736b442' + '8bc59f460fa154 ...
- hadoop + ssh 配置
1.输入 2.解决上述问题 3. 4.去掉登陆密码 5.不用密码登陆