首页 > 其他分享 >海亮02/14杂题

海亮02/14杂题

时间:2024-02-13 19:12:05浏览次数:21  
标签:02 ch frac int 海亮 read ans 杂题 mod

海亮2月14日

个人题单

T1

link

题意

传奇特级大师 \(\mathsf E \color{red}\mathsf{ntropyIncreaser}\) 有一个 \(n\times m\) 的矩形纸片,她将其放置在一个平面直角坐标系中,使其左下角在 \((0,0)\),右上角在 \((n,m)\) 位置。

她每次会均匀随机选择一条平行于坐标轴、经过坐标均为整数的点,且穿过(不能是经过边界)纸片的直线,沿此方向将纸片裁开,并扔掉裁剪线的下侧或右侧的部分。

她想要你求出期望多少次操作后,剩下纸片的面积小于 \(k\)。你只需要求出答案模 \(10^9+7\) 的结果。

有多组数据,每次给出 \(n,m,k\),保证所有 \(n\) 之和、所有 \(m\) 之和不超过 \(10^6\)。

题解

考虑将选择顺序看作一个排列,然后看哪些位置是有效的。

我们发现,一个横(竖)线 \(i\) 有效当且仅当以下两个条件都成立:

  • 排在 \(i\) 前面的横(竖)线没有在 \([1,i-1]\) 范围内的。
  • 排在 \(i\) 前面的竖(横)线没有在 \([1,\lfloor\frac{S}{i}\rfloor]\) 范围内的。

发现出现这种情况的概率是 \(\frac{1}{i}\times\frac{1}{\min(n,\frac{S}{i})}\) 的(这里算的是横线,竖线记得换下 \(n\))。

然后枚举一下就好了。

代码

#include<bits/stdc++.h>
#define int long long
using namespace std;
bool stmemory;
namespace Call_me_Eric{
inline int read(){
    int x = 0, f = 1;char ch = getchar();
    while(ch < '0' || ch > '9'){if(ch == '-') f = -1;ch = getchar();}
    while(ch >= '0' && ch <= '9'){x = (x << 1) + (x << 3) + (ch ^ 48);ch = getchar();}
    return x * f;
}
const int maxn = 2e6 + 10, mod = 1e9 + 7;
int inv[maxn];
int qpow(int x,int a){
    int res = 1;
    while(a){
        if(a & 1)res = 1ll * res * x % mod;
        x = 1ll * x * x % mod;a >>= 1;
    }
    return res;
}
int n, m, S;
void main(){
    inv[1] = 1;
    for(int i = 2;i < maxn;i++){inv[i] = (mod - mod / i) * 1ll * inv[mod % i] % mod;}
    auto solve = [](){
        n = read(); m = read(); S = read() - 1;
        if(n * m <= S){puts("0");return;}
        int ans = 1;
        for(int i = 1;i < n;i++){
            int j = min(S / i,m);if(j == m)continue;
            ans += inv[i + j];if(ans >= mod)ans -= mod;
        }
        for(int i = 1;i < m;i++){
            int j = min(S / i,n);if(j == n)continue;
            ans += inv[i + j];if(ans >= mod)ans -= mod;
        }
        printf("%lld\n",ans);
        return;
    };
    int T = read();while(T--)solve();
    return;
}
};
bool edmemory;
signed main(){
    // freopen("tmp.in","r",stdin);
    auto stclock = clock();
    Call_me_Eric::main();
    auto edclock = clock();
    cerr << (&stmemory - &edmemory) / 1024.0 / 1024.0 << " Mib cost.\n";
    cerr << (edclock - stclock) * 1.0 / CLOCKS_PER_SEC << " Sec cost.\n";
    return 0;
}

标签:02,ch,frac,int,海亮,read,ans,杂题,mod
From: https://www.cnblogs.com/Call-me-Eric/p/18014730

相关文章

  • 「杂题乱刷」洛谷 P10155
    题目链接P10155[LSOT-2]基于二分查找与插入的快速排序解题思路算法一:容易发现,当\(a_n\)不为\(n\)时,我们无论如何都无法将\(n\)这个值插入到最后一位,否则我们可以依次将所有数字从大到小插入,这样也可以保证失去最少的贡献。视写法获得\(40\)分或\(60\)分。算法二......
  • 2024牛客寒假算法基础集训营3
    M题智乃的36倍数(normalversion)错解幂运算写成了乘~#include<bits/stdc++.h>usingnamespacestd;#defineendl'\n'#defineintlonglong#definedebug(x)cout<<x<<""<<endl;#define_debug(a,n)for(inti=0;i<n;i++)......
  • 2023年度小结
    这一年经历的挺多的。年初时还在疫情,直到疫情结束,经历了又一个超长寒假,才得以正常学习。高三下学期,政治,地理两门双双出问题,努力了一段时间,确实没有提高太多,可能还是不够用功吧。三次模拟一次比一次低,状态也越来越差,三模又生了病,高考第一天又复发了,确实运气不好,考的也不怎么样。后......
  • 2024年初找新SAP项目的几个体会
    2024年初找新SAP项目的几个体会 1.一定要找业界知名大型乙方实施公司的项目。比如IBM,AC,凯捷或者印度公司比如TCS,InfoSys等业界知名外企乙方公司的项目,都是相对靠谱的。这些大公司能够拿下业界土豪客户比如跨国外企的项目,因为他们牌子大业界口碑好,能得到不差钱大客户的亲赖和......
  • 2024/2/12学习进度笔记
    sparkrdd持久化frompysparkimportSparkContext,SparkConfimportosimportrefrompyspark.storagelevelimportStorageLevelos.environ['SPARK_HOME']='/export/server/spark'PYSPARK_PYTHON="/root/anaconda3/envs/pyspark_env/bin......
  • WC 2024 游记
    WC2024游记Day-2~Day-1在酒店颓废。Day0不存在的一天。Day1报到日。上午从酒店搬了出来(行李箱好重qvq)。坐上了cq神奇的地铁(轻轨),看着地铁上天下地的感觉还是很奇妙的。大抵是中午的时候到了育才。离育才最近的地铁口可以坐环线(转圈圈!),cq地铁真神奇。到了门口发现每......
  • 2024牛客寒假算法基础集训营1
    2024牛客寒假算法基础集训营1A解题思路:按照\(dfs\)出现顺序暴力判断即可。代码:#include<bits/stdc++.h>usingnamespacestd;usingll=longlong;usingpii=pair<ll,ll>;#definefifirst#definesesecondusingi128=__int128_t;usingpiii=pair<ll,pai......
  • GDKOI2023 错排
    逆天。转化后的题意\(q\)组询问,求有\(n-m\)个自由元素,\(m\)个限制元素的错排问题。\(1\len,m,q\le2\times10^5\)首先写出两种组合意义的转移方程:\[\begin{aligned}f(n,m)&=f(n,m-1)-f(n-1,m-1)\\f(n,m)&=(m-1)f(n-1,m-2)+(n-m)f(n-1,m-1)\end{aligned}\]......
  • [WUSTCTF2020]朴实无华
    [WUSTCTF2020]朴实无华robots.txt里发现提示打开这个页面,虽然页面里没有有用的信息,但是在响应头里发现了另一个页面提示打开发现代码<?phpheader('Content-type:text/html;charset=utf-8');error_reporting(0);highlight_file(__file__);//level1if(isset($_GET......
  • [MRCTF2020]Hello_ misc
    [MRCTF2020]Hello_misc压缩包里有1个压缩包和png图片压缩包有密码,先对图片进行解析发现红色通道里还藏有一张图片得到zip压缩包密码:!@#$%67*()-+这个密码是图片中藏着的压缩包的密码,输入后打开里面有一个out.txt文件12725563191127191631271272556319163......