csps模拟测试57
T1 天空龙
大神题,考察多方面知识,例如:快读
附上考试代码,以供后人学习
应某迪要求,我决定多写一点。
正如文化课有知识性失分和非知识性失分一样,OI也同样存在。
但非知识性失分往往比知识性失分更惨。
140分,足以让我屈服。如果这是csps,后果不堪设想。
考后一定要检查:快读,提交语言,freopen删没删。
吸取教训,继续前进吧。
#include<cstdio>
#include<iostream>
#include<algorithm>
#include<cstring>
using namespace std;
inline int read()
{
int x=,f=;char c=getchar();
while(c<''||c>'') {if(c='-') f=-;c=getchar();}
while(c>=''&&c<='') x=x*+c-,c=getchar();
return x*f;
}
int main()
{
int t=read();
while(t--)
{
int a=read(),b=read(),c=read(),x=read(),y=read(),z=read(),cnt=;
if(x<a&&y<b&&z<c){puts("YES");continue;}
if(x>a&&y>b&&z>c){puts("NO");continue;}
if(a>x) cnt+=(a-x)/;else cnt+=(a-x);
if(b>y) cnt+=(b-y)/;else cnt+=(b-y);
if(c>z) cnt+=(c-z)/;else cnt+=(c-z);
if(cnt>=) puts("YES");
else puts("NO");
}
return ;
}
T2 巨神兵
大神题,同样考察快读。
显然状压DP。
有向无环图有分层性,这是思考的起点
设f[i][j]表示i点集最后一层状态为j的方案数,直接转移即可,注意:上一层必须与新加的层的每个点都有连边。时间复杂度$O(4^n×m)$
考虑优化,把后面那一维去掉,这样会算重,容斥一下,奇加偶减。
#include<cstdio>
#include<cstring>
#include<iostream>
#define int long long
using namespace std;
const int mod=1e9+;
int f[<<],st[],ed[],cnt[],tot,n,m,num[<<],g[<<],t[][],bin[<<];
int p[],gt[<<][];
signed main()
{
int ans=;p[]=;
scanf("%lld%lld",&n,&m);
for(register int i=;i<=n;i++) bin[<<i-]=i;
for(register int i=;i<=m;i++) p[i]=p[i-]*%mod;
for(register int i=;i<=m;i++) scanf("%lld%lld",&st[i],&ed[i]),t[st[i]][ed[i]]++;
for(register int i=;i<<<n;i++)
for(register int j=;j<=n;j++)
gt[i][j]=gt[i^(i&-i)][j]+t[bin[i&-i]][j];
for(register int i=;i<<<n;i++) f[i]=,num[i]=num[i^(i&-i)]+;
for(register int i=;i<<<n;i++)
{
int ret=((<<n)-)^i;g[]=;
for(register int k=(ret-)&ret;k;k=(k-)&ret)
{
int st=k^ret;
g[st]=g[st^(st&-st)]*(p[gt[i][bin[st&-st]]]-)%mod;
(f[i|st]+=(num[st]&?:-)*f[i]*g[st]%mod)%=mod;
}
int st=ret;
g[st]=g[st^(st&-st)]*(p[gt[i][bin[st&-st]]]-)%mod;
(f[i|st]+=(num[st]&?:-)*f[i]*g[st]%mod)%=mod;
}
printf("%lld\n",(f[(<<n)-]%mod+mod)%mod);
return ;
}
T3 太阳神
直接反演,再发现一个小规律就好了。
#include<cstdio>
#include<iostream>
#define int long long
using namespace std;
const int N=,mod=1e9+;
short mul[N+];
char vst[N+];
int prime[+],tot;
int n,ans;
inline void pre()
{
mul[]=;
for(register int i=;i<=N;i++)
{
if(!vst[i]) prime[++tot]=i,mul[i]=-;
for(register int j=;j<=tot&&prime[j]*i<=N;j++)
{
vst[i*prime[j]]=;
if(i%prime[j]==){mul[i*prime[j]]=;break;}
mul[i*prime[j]]=-mul[i];
}
}
return ;
}
inline int gg(int x)
{
int cnt=;
for(register int i=;i*i*i<=x;i++,cnt++)
for(register int j=i+;i*j*j<x;j++)
(cnt+=*(x/i/j-j)%mod)%=mod;
for(register int i=;i*i<=x;i++)
(cnt+=*(x/i/i-(x/i/i>=i))%mod)%mod;
return cnt;
}
inline void Get()
{
for(int i=;i*i<=n;i++)
{
if(!mul[i]) continue;
(ans+=mul[i]*gg(n/i/i)%mod)%=mod;
}
}
signed main()
{
scanf("%lld",&n);
pre();Get();
cout<<(((n%mod*(n%mod))%mod-ans)%mod+mod)%mod<<endl;
return ;
}
csps模拟测试57的更多相关文章
- csp-s模拟测试57(10.2)「天空龙」·「巨神兵」·「太阳神」
题目是古埃及神话??? A. 天空龙 傻逼模拟,看来没有滑天下之大稽QAQ,也没有打错快读(大雾...) B. 巨神兵 难度爆增,一脸懵比..... 60分状压: 因为是求有向图,关于有向图好像拓扑用 ...
- CSP-S 模拟测试57题解
人生第一次A,B层一块考rank2,虽然说分差没几分,但还是值得纪念. 题解: T1 天空龙: 大神题,因为我从不写快读也没有写考场注释的习惯,所以不会做,全hzoi就kx会做,kx真大神级人物. T ...
- csp-s模拟测试91
csp-s模拟测试91 倒悬吃屎的一套题. $T1$认真(?)分析题意发现复杂度不能带$n$(?),计划直接维护答案,考虑操作对答案的影响,未果.突然发现可以动态开点权值线段树打部分分,后来$Tm$一 ...
- csp-s模拟测试86
csp-s模拟测试86 分屋前的最后一次考试,我早就放弃了自己. 02:02:46 70 02:02:57 03:16:08 100 03:16:08 $T1$忘了按位计算,达哥按位计算的$T1$当时 ...
- csp-s模拟测试99
csp-s模拟测试99 九九归一直接爆炸. $T1$一眼板子. $T2$一眼语文题(语文的唯一一次$120+$是给模拟出来的可知我的语文能力). $T3$一眼普及题. ?? Hours Later 板 ...
- csp-s模拟测试98
csp-s模拟测试98 $T1$??不是我吹我轻松手玩20*20.$T2$装鸭好像挺可做?$T3$性质数据挺多提示很明显? $One$ $Hour$ $Later$ 这$T1$什么傻逼题真$jb$难调 ...
- csp-s模拟测试97
csp-s模拟测试97 猿型毕露.水题一眼秒,火题切不动,还是太菜了. $T1$看了一会儿感觉$woc$期望题$T1??$假的吧??. $T2$秒. $T3$什么玩意儿. 40 01:24:46 00 ...
- csp-s模拟测试96
csp-s模拟测试96 $T1$一眼慢速乘,$T2$稍证一手最优性尝试用神奇数据结构优化,无果,弃.$T3$暴力+信仰. 100 03:16:38 95 03:16:56 35 03:17:10 23 ...
- csp-s模拟测试95
csp-s模拟测试95 去世场祭. $T1$:这不裸的除法分块吗. $T2$:这不裸的数据结构优化$Dp$吗. $T3$:这不裸的我什么都不会搜索骗$30$分吗. 几分钟后. 这除法分块太劲了..(你 ...
随机推荐
- windows下将jar文件设置为系统服务
jar文件的执行需要java环境,怎么配置环境相信不用说了 因为不想每次开机都手动启动一次程序,那么我们就需要把它配置成开机自启动的服务,下面就来讲一种方法 首先,我们知道jar文件的执行命令为 ja ...
- Tomcat线程参数maxThreads、acceptCount
一.配置Tomcat/conf/server.xml修改配置 <Connector port="8080" protocol="org.apache.coyote. ...
- Docker service update更新不成功的问题
一.基本信息 1.Docker版本 [root@ip---- ~]# docker --version Docker version , build a872fc2f86 2.系统版本 [root ...
- spring-boot-plus XSS跨站脚本攻击处理
XSS跨站脚本攻击处理 XSS:Cross Site Scripting 跨站脚本攻击(XSS),是目前最普遍的Web应用安全漏洞.这类漏洞能够使得攻击者嵌入恶意脚本代码到正常用户会访问到的页面中,当 ...
- 多线程EventWaitHandle -戈多编程
在.NET的System.Threading命名空间中有一个名叫WaitHandler的类,这是一个抽象类(abstract),我们无法手动去创建它,但是WaitHandler有三个子类,这三个子类分 ...
- django开发中关于外键设置
django开发中关于外键设置 我们建模型的时候会用到ForeignKey 而由于外键的约数会导致一些保存 所有我们ctrl+左键进入源码 源码 def __init__(self, to, on_d ...
- XGBoost: 你不能不知的机器学习算法
XGBoost作为一个非常常用的算法,我觉得很有必要了解一下它的来龙去脉,于是抽空找了一些资料,主要包括陈天奇大佬的论文以及演讲PPT,以及网络上的一些博客文章,今天在这里对这些知识点进行整理归纳,论 ...
- SpringBoot 2.0整合阿里云OSS,实现动静分离架构
前言 相信大部分开发者对下面这张架构图并不陌生吧,现在很多网站/应用都采用了动静分离的架构进行部署.博主的博客也不例外,主机采用的是阿里云的 ECS,使用 CDN 做静态内容分发,不过静态文件还是存储 ...
- python学习-类的继承
1.继承的语法 2.多继承 3.override(子类重写父类的方法) 4.子类调用父类中被重写的实例方法 5.使用super函数调用父类的构造方法
- 12.Linux重定向与管道|
1.重定向概述 1.1什么是重定向 将原本要输出到屏幕的数据信息,重新定向到某个指定的文件中 名称 文件描述符 作用 标准输入(STDIN) 0 默认是键盘,也可以是文件或其他命令的输出. 标准输出( ...