工业题

题解

抱歉,题解没时间写了

代码

#include<bits/stdc++.h>
using namespace std;
#define ll long long
#define A 6666666
#define mod 998244353
ll jie[A],ni[A],acnt[A],bcnt[A];
ll fheng[A],fshu[A];
ll n,m,a,b;
ll meng(ll x,ll k){
ll ans=1;
for(;k;k>>=1,x=x*x%mod)
if(k&1)
ans=ans*x%mod;
return ans;
}
ll C(ll x,ll y){
return jie[x]*ni[x-y]%mod*ni[y]%mod;
}
int main(){
// freopen("a_sample2.in","r",stdin);
scanf("%lld%lld%lld%lld",&n,&m,&a,&b);
a%=mod,b%=mod;
jie[0]=1;ni[0]=1;
acnt[0]=bcnt[0]=1;
for(ll i=1;i<=n+m;i++)
jie[i]=jie[i-1]*i%mod,acnt[i]=acnt[i-1]*a%mod,bcnt[i]=bcnt[i-1]*b%mod;
ni[n+m]=meng(jie[n+m],mod-2);
for(ll i=n+m-1;i>=1;i--)
ni[i]=ni[i+1]*(i+1)%mod;
for(ll i=1;i<=n;i++)
scanf("%lld",&fheng[i]),fheng[i]%=mod;
for(ll j=1;j<=m;j++)
scanf("%lld",&fshu[j]),fshu[j]%=mod;
ll ans=0;
for(ll i=n;i>=1;i--){
// printf("acnt=%lld bcnt=%lld ")
// printf("fheng[]=%lld n-i+m=%lld m=%lld i=%lld c=%lld acnt=%lld bcnt=%lld\n",fheng[i],n-i+m,m,i,C(n-i+m,m),acnt[m],bcnt[n-i]);
ans=(ans+fheng[i]*((acnt[m]%mod*bcnt[n-i]%mod)%mod)%mod*C(n-i+m-1,m-1)%mod)%mod;
}
for(ll i=1;i<=m;i++){
// printf("fheng[]=%lld n-i+m=%lld m=%lld i=%lld c=%lld acnt=%lld bcnt=%lld\n",fshu[i],n-i+m,m,i,C(n-i+m,m),acnt[m-i],bcnt[n]);
ans=(ans+fshu[i]*((acnt[m-i]%mod*bcnt[n]%mod)%mod)%mod*C(n-i+m-1,n-1)%mod)%mod;
}
printf("%lld\n",ans);
}

玄学题

题解

题目中说求$\sum\limits_{i=1}^{i<=n}(-1)^{\sum\limits_{j=1}^{j<=m} d(i*j)}$ $d$表示约数个数

$(-1)^{\sum\limits_{j=1}^{j<=m} d(i*j)}$只和奇偶性有关,如果$d(i*j)$为偶数,那么它是没用,偶+偶=偶,偶+奇=奇

那么只考虑约数个数为奇就可以了,发现约数个数为奇当且仅当为完全平方数

我们把$i$ 拆成 $p*q^2$($p$ 没有平方因子),那 $j$ 必须有 $p*r^2$ 的形式,所以对于每个 $i$,都有 $sqrt(\frac{m}{p})$ 个 $j$ 产生贡献。

可以埃筛(需要卡常)可以线筛

我用的埃筛

代码

#include<bits/stdc++.h>
using namespace std;
#define ll int
#define A 11111111
long long m,n,ans;
ll a[A];
int main(){
scanf("%lld%lld",&n,&m);
for(ll i=1;i<=n;i++)
a[i]=i;
ll haha=sqrt(n);
for(ll i=haha;i>=2;i--){
ll now=i*i;
for(ll j=now;j<=n;j+=now){
while(a[j]%now==0)
a[j]/=now;
}
}
for(ll i=1;i<=n;i++){
long long now=m/a[i];
now=sqrt(now);
if(now&1) ans--;
else ans++;
}
printf("%lld\n",ans);
}

卡常题

题解

代码

考试经历

$t1$沉迷打表

范围很大,我觉得可能是$n+m$的

我总觉得$f[n][m]$可拆,拆成$w1*(?*a*?*b)*f[n][0]+w2*(?*a*?*b)f[n-1][0]+.......w.*(?*a*?*b)f[0][m]$

$?$很简单,可以推出来$a$,$b$系数,然后我就开始推总体系数$w$

然后我就打了$75$分钟表,

当然也有一丁点收获

1
1 2
1 3 6
1 4 10 20
1 5 15 35 70
1 6 21 56 126 252
1 7 28 84 210 462 924

$update$

这个表就是组合数表,呵呵.终于认清自己傻逼本质

一直到$20$行我只截取了7行

然而并没有什么卵用,

这个式子屁用没有

然后开始想$t2$

$t2$让我想起了

     God Knows

然后我开始想$区间dp$

然后我想了很长时间,依然没有任何收获

转移起来跟.一样

然后看$t3$,

NOIP模拟测试39,思维禁锢专场「工业题·玄学题·卡常题」的更多相关文章

  1. 「题解」NOIP模拟测试题解乱写II(36)

    毕竟考得太频繁了于是不可能每次考试都写题解.(我解释个什么劲啊又没有人看) 甚至有的题目都没有改掉.跑过来写题解一方面是总结,另一方面也是放松了. NOIP模拟测试36 T1字符 这题我完全懵逼了.就 ...

  2. 2019.8.3 [HZOI]NOIP模拟测试12 C. 分组

    2019.8.3 [HZOI]NOIP模拟测试12 C. 分组 全场比赛题解:https://pan.baidu.com/s/1eSAMuXk 刚看这题觉得很难,于是数据点分治 k只有1和2两种,分别 ...

  3. 2019.8.3 [HZOI]NOIP模拟测试12 B. 数颜色

    2019.8.3 [HZOI]NOIP模拟测试12 B. 数颜色 全场比赛题解:https://pan.baidu.com/s/1eSAMuXk 数据结构学傻的做法: 对每种颜色开动态开点线段树直接维 ...

  4. 2019.8.3 [HZOI]NOIP模拟测试12 A. 斐波那契(fibonacci)

    2019.8.3 [HZOI]NOIP模拟测试12 A. 斐波那契(fibonacci) 全场比赛题解:https://pan.baidu.com/s/1eSAMuXk 找规律 找两个节点的lca,需 ...

  5. NOIP模拟测试17&18

    NOIP模拟测试17&18 17-T1 给定一个序列,选取其中一个闭区间,使得其中每个元素可以在重新排列后成为一个等比数列的子序列,问区间最长是? 特判比值为1的情况,预处理比值2~1000的 ...

  6. [NOIP模拟测试30]题解

    A.Return 出题人大概是怕自己的中文十级没人知道,所以写了这么一个***题面.可能又觉得这题太水怕全场A掉后自己面子过不去,于是又故意把输出格式说的含糊不清.(鬼知道"那么输出-1&q ...

  7. 「题解」NOIP模拟测试题解乱写I(29-31)

    NOIP模拟29(B) T1爬山 简单题,赛时找到了$O(1)$查询的规律于是切了. 从倍增LCA那里借鉴了一点东西:先将a.b抬到同一高度,然后再一起往上爬.所用的步数$×2$就是了. 抬升到同一高 ...

  8. NOIP模拟测试19「count·dinner·chess」

    反思: 我考得最炸的一次 怎么说呢?简单的两个题0分,稍难(我还不敢说难,肯定又有人喷我)42分 前10分钟看T1,不会,觉得不可做,完全不可做,把它跳了 最后10分钟看T1,发现一个有点用的性质,仍 ...

  9. NOIP模拟测试10「大佬·辣鸡·模板」

    大佬 显然假期望 我奇思妙想出了一个式子$f[i]=f[i-1]+\sum\limits_{j=1}^{j<=m} C_{k \times j}^{k}\times w[j]$ 然后一想不对得容 ...

随机推荐

  1. Codeforces Round #692 (Div. 2, based on Technocup 2021 Elimination Round 3)

    A.In-game Chat 题目:就是从后面数连着的'('的个数是不是严格比剩下的字符多 思路:水题,直接从后往前遍历即可 代码: #include<iostream> #include ...

  2. 自定义WPF分页控件

    一.分页控件功能说明 实现如上图所示的分页控件,需要实现一下几个功能: 可以设置每页能够展示的最大列数(例如每页8列.每页16列等等). 加载的数组总数量超过设置的每页列数后,需分页展示. 可以直接点 ...

  3. C++ string的size()和length()函数没有区别

    C++标准库中的string中两者的源代码如下:      size_type   __CLR_OR_THIS_CALL   length()   const     { //   return   ...

  4. OOP第四章博客

    OOP第四章博客作业 (1)本单元作业架构设计 1)针对于第一次作业,我是将所给类进行了自己的封装,在MyUmlInteraction类里面进行关系的建立,这里把所给的UmlClass建立好,同时有i ...

  5. [bug] IDEA 右侧模块灰色

    参考 https://blog.csdn.net/weixin_44188501/article/details/104717177

  6. [DB] Zookeeper

    介绍 相当于"数据库",类似linux.hdfs的属性文件结构 分布式协调框架,实现HA(High Availability) 分布式锁管理框架 保证数据在zookeeper集群之 ...

  7. mysqldMY-010457] [Server] --initialize specified but the data directory has files in it. Aborting. 2020-12

    删除mysql的/var/lib/mysql目录下的所有文件 https://blog.csdn.net/tr1912/article/details/81271851 # mysqld --init ...

  8. Linux_配置本地YUM源(RHEL8)

    [RHEL8] Linux-RHEL8配置本地YUM 源,按照之前传统的配置本地YUM的方法肯定不行,在RHEL8版本的软件源发生了变化,在RHEL8版本的软件仓库分成了两部分:[AppStream] ...

  9. Linux_搭建Samba服务(匿名访问)

    [RHEL8]-SMBserver:[RHEL7]-SMBclient !!!测试环境我们首关闭防火墙和selinux(SMBserver和SMBclient都需要) [root@localhost ...

  10. MyBaits 全局配置文件(mybatis-config.xml)

    什么是 MyBatis 全局配置文件 MyBatis 全局配置文件包含影响 MyBatis 框架正常使用的功能设置和属性信息. 它的作用好比手机里的设置图标,点击这个图标就可以帮助我们查看手机的属性信 ...