wannafly camp day4
2088: 电音之王
题目描述:
终于活成了自己讨厌的样子。
听说多听电音能加快程序运行的速度。
定义一个数列,告诉你a0,a1,m0,m1,ca\_0,a\_1,m\_0,m\_1,ca0,a1,m0,m1,c,定义an=m0an−1+m1an−2+ca\_n=m\_0a\_{n-1}+m\_1a\_{n-2}+can=m0an−1+m1an−2+c对所有n≥2n\geq 2n≥2。
求(∏i=0kai)modM\left( \prod\_{i=0}^{k}{a\_i} \right) mod M(∏i=0kai)modM
输入:
第一行一个整数T(1≤T≤1000)T(1\leq T\leq 1000)T(1≤T≤1000),表示数据组数。
每组数据一行777个整数a0,a1,m0,m1,c,M,ka\_0,a\_1,m\_0,m\_1,c,M,ka0,a1,m0,m1,c,M,k,保证1≤M≤1018,0≤a0,a1,m0,m1,c<M,2≤k≤1061\leq M\leq 10^{18},0\leq a\_0,a\_1,m\_0,m\_1,c< M, 2\leq k\leq 10^61≤M≤1018,0≤a0,a1,m0,m1,c<M,2≤k≤106,保证MMM为奇数。
保证∑k≤108\sum k \leq 10^8∑k≤108。
输出:
对于每组数据,输出一行表示答案。
1
1 1 1 1 0 1000000007 10
904493530 题意 : 就是按照要求求几个数册乘积并取模,注意他这里的模数非常的大,普通的边乘边取模直接或炸掉,因此这里可以用一个快速乘,当相乘的两个数大于long long 时仍然可以保证答案的正确性
代码示例 :
using namespace std;
#define ll long long
const int maxn = 1e6+5;
const int mod = 1e9+7;
const double eps = 1e-9;
const double pi = acos(-1.0);
const int inf = 0x3f3f3f3f; ll a0, a1, m0, m1, c, M, k; inline ll multi(ll x,ll y,ll mod){
x = x%mod, y = y % mod;
return ((x*y-(ll)(((long double)x*y+0.5)/mod)*mod)%mod+mod)%mod;
} int main() {
//freopen("in.txt", "r", stdin);
//freopen("out.txt", "w", stdout);
int t; cin >>t;
while(t--){
scanf("%lld%lld%lld%lld%lld%lld%lld", &a0, &a1, &m0, &m1, &c, &M, &k);
a0 %= M, a1 %= M, m0 %= M, m1 %= M, c %= M; ll ans = multi(a0, a1, M);
for(int i = 2; i <= k; i++){
ll x = ((multi(m0, a1, M)+multi(m1, a0, M))%M + c)%M;
ans = multi(ans, x, M);
a0 = a1, a1 = x;
}
printf("%lld\n", ans);
}
return 0;
}
2098: 数论之神
题目描述:
终于活成了自己讨厌的样子。
这是她们都还没长大的时候发生的故事。那个时候,栗子米也不需要为了所谓的爱情苦恼。
她们可以在夏日的午后,花大把的时间去研究生活中一些琐碎而有趣的事情,比如数论。
有一天西柚柚问了栗子米一个题,她想知道⌊n1⌋,⌊n2⌋,…,⌊nn⌋\lfloor\frac{n}{1}\rfloor, \lfloor\frac{n}{2}\rfloor, \dots, \lfloor\frac{n}{n}\rfloor⌊1n⌋,⌊2n⌋,…,⌊nn⌋中有多少不同的数,这些不同的数字里面第kkk大的是多少。
输入:
第一行一个整数T(T≤105)T(T\leq 10^5)T(T≤105),表示数据组数。
每组数据第一行两个整数,表示n,k(1≤n≤1018)n,k(1\leq n\leq 10^{18})n,k(1≤n≤1018),保证kkk不会超过不同的数字个数。
输出:
对于每组数据输出,输出两个整数,表示有多少个不同的数字和这里面第k大的是多少。
3
1 1
5 2
67 8
1 1
3 2
15 8 题目分析 : 找规律发现一定是1, 2, 3, ..., x, n/(x-1), n/(x-2), .... x是sqrt(n)附近
代码示例 :
#include<bits/stdc++.h>
#include<algorithm>
using namespace std;
#define ll long long ll n, k;
ll ff; int main() {
ll t; cin >> t;
while(t--){
scanf("%lld%lld", &n, &k);
ll f;
ll l = 1, r = 1000000000;
while(l <= r){
ll mid = (l+r)>>1;
if (mid*mid <= n) {
f = mid;
l = mid+1;
}
else r = mid-1;
}
ll ans = 2*f;
if (f == n/f) ans--; ll ans2;
ll k1 = ans-k+1; // 第 K 小
if(k1 <= f) ans2 = k1;
else ans2 = n/k;
printf("%lld %lld\n", ans, ans2);
} return 0;
}
wannafly camp day4的更多相关文章
- 2020 wannafly camp 补题 day1
题目可以从牛客上找到. 最简单的一个题应该是B B. 密码学 这个应该就是倒着推,题目给了你加密的顺序,所以我们逆推这个就可以得到每一次加密前的字符串. 1H. 最大公约数 题目大意就是给你一个范围1 ...
- CCPC-Wannafly Winter Camp Day4 G---置置置换【递推】【组合数】【逆元】
置置置换 已经提交 已经通过 63.89% Total Submission:72 Total Accepted:46 题目描述 wlswlswls有一个整数nnn,他想请你算一下有多少1...n1. ...
- CCPC-Wannafly Winter Camp Day4 Div1 - 咆咆咆哮 - [三分+贪心]
题目链接:https://zhixincode.com/contest/18/problem/I?problem_id=267 题目描述 输入描述 输出描述 一行一个整数表示答案. 样例输入 1 32 ...
- CCPC-Wannafly Winter Camp Day4 Div1 - 置置置换 - [DP]
题目链接:https://zhixincode.com/contest/18/problem/G?problem_id=265 题目描述 wls有一个整数 $n$,他想请你算一下有多少 $1...n$ ...
- CCPC-Wannafly Winter Camp Day4 Div1 - 最小边覆盖 - [线段树]
题目链接:https://zhixincode.com/contest/18/problem/C?problem_id=261 样例输入 1 4 21 23 4 样例输出 1 Yes 样例输入 2 4 ...
- CCPC-Wannafly Winter Camp Day4 Div1 - 夺宝奇兵 - [简单思维题]
题目链接:https://zhixincode.com/contest/18/problem/A?problem_id=259 题目描述 wls正在玩一个寻宝游戏. 宝藏一共有 $n$ 种,都藏在一个 ...
- CCPC-Wannafly Winter Camp Day4 (Div2, onsite)
Replay Dup4: 两轮怎么退火啊? 简单树形dp都不会了,送了那么多罚时 简单题都不想清楚就乱写了,喵喵喵? X: 欧拉怎么回路啊, 不会啊. 还是有没有手误?未思考清楚或者未检查就提交, 导 ...
- 2019 CCPC-Wannafly Winter Camp Day4(Div2, onsite)
slove 6/11 A.夺宝奇兵 Code:zz Thinking:zz 贪心即可.这条路线里,点n1和点n2肯定是相连的,接下来,点(n-1)1和点(n-1)2分别是和n1和点n2相连的,一共有两 ...
- 【CCPC-Wannafly Winter Camp Day4 (Div1) G】置置置换(动态规划)
点此看题面 大致题意: 求出有多少个长度为\(n\)的排列满足对于奇数位\(a_{i-1}<a_i\),对于偶数位\(a_{i-1}>a_i\). 考虑打表? 考虑每次只有一个数\(n\) ...
随机推荐
- html(二)登陆页面
今天开始正常上课学习HTML+CSS+JSP 嗯 前两个没讲直接上手! 老师也是很认同我们的呢~ 这是第一个案例 做一个登陆页面,并利用post提交表单 传值到另一个界面接收值. 1.设置值: &l ...
- UVA 11996 Jewel Magic —— splay、序列的分裂与合并、LCP的哈希算法
#include <cstdio> #include <cstdlib> #include <iostream> #include <algorithm> ...
- 后缀数组 + LCP加速多模式匹配算法 O(m+logn)
#include <iostream> #include <cstdio> #include <cstring> #include <algorithm> ...
- web.xml和@WebServlet
web.xml <servlet> <servlet-name>DZDYServlet</servlet-name> <servlet-class>包名 ...
- 关于Android studio Haxm加速器安装
首先,在SDK manager中要安装如下选项 安装后,在启动虚拟机时如果提示你没有Install Haxm,在目录sdk\extras\intel\Hardware_Accelerated_Exec ...
- 机器学习——集成学习之Bagging
整理自: https://blog.csdn.net/woaidapaopao/article/details/77806273?locationnum=9&fps=1 随机森林 1.随机森林 ...
- Fast Stone截图工具使用教程
下面是Fast Stone的显示面板,很小巧,但功能强大 一.特殊功能 1.1 添加水印 (1)选择功能栏的"Edge" (2)将要水印的图片选中,选择水印图片的放置位置,应用即可 ...
- linux测试 scullpipe 驱动
我们已经见到了 scullpipe 驱动如何实现阻塞 I/O. 如果你想试一试, 这个驱动的源码 可在剩下的本书例子中找到. 阻塞 I/O 的动作可通过打开 2 个窗口见到. 第一个可运行 一个命令诸 ...
- logisim自动生成电路
之前再做有关logisim有关的实验时,一直在傻乎乎地连线,而我是看了mooc有关的视频时,才知道logisim有自动连线的功能. 自动连线需要事先知道输入与输出的真值表或者全部的表达式,将其填入lo ...
- C++中常量成员函数的含义
C++中常量成员函数的含义 本文内容来源:<C++必知必会> 使用常量成员函数可以改变对象的逻辑状态,虽然对象的物理状态没有发生改变.考虑如下代码,它定义了一个类X: class X{ p ...