问题虫洞——A:A - Just Skip The Problem HDU - 6600

黑洞内窥:

给出一个数n, 而你也将得到一个连你自己也不到的数X,

然后你可以用这个数X去和一个Y进行与运算,而系统也会回答你与运算的结果是不是等于Y,
(其中 0<= X, Y <= 2^n-1)

问,你一共有多少种方法可以在和Y与运算后知道你手上的数X。。

思维光年:

首先,我们可以用X去 和1&, 即X&1,依次判断X的二进制的每一位是0还是1,

结果显然是与不同的Y进行了n次与操作(这里的n是二进制位数)

那么到底有多少种方法呢? 因为你用X&的n次操作中是无序的,总的结果数就应该是Ann

即 sum = 排列组合数Ann = n!

还有一点就是,要mod1e6+3,当n>=1e6+3的时候,n!中就会有1e6+3的因子,所以结果就是0

ACcode:

#include<cstdio>
#include<algorithm>
#include<cstring>
#include<iostream>
using namespace std;typedef long long ll;
const int p = 1e6 + 3;
ll n;
ll a[p + 10];int main()
{a[0] = 1;for(int i = 1;i <= p; ++i)a[i] = (a[i - 1] * i) % p;while(~scanf("%lld",&n)){if(n == 0 || n >= p) printf("0\n");else  printf("%lld\n",a[n]);}return 0;
}

问题虫洞——B:B - Everything Is Generated In Equal Probability HDU - 6595

思维光年:

虽然知道肯定会有公式,但是还是没有做出来。。。。。

那么这个神奇的公式就是:ans = (n*n - 1)/ 9

推荐两篇博客吧,证明都给的很详细,我自己再琢磨琢磨吧。。。

推荐博客一:Everything Is Generated In Equal Probability

推荐博客二:HDU 6595 Everything Is Generated In Equal Probability(递推求期望|找规律)

ACcode:

//#include<bits/stdc++.h>
//std::ios::sync_with_stdio(false);
#include  <stdio.h>
#include <iostream>
#include<algorithm>
#include      <set>
#include      <map>
#include    <queue>
#include    <stack>
#include   <string>
#include   <math.h>
#include   <vector>
#include  <cstring>
#include <stdlib.h>
#include <string.h>
using namespace std;
typedef long long ll;
#define MAXN 3000005
#define INF 0x3f3f3f3f//将近ll类型最大数的一半,而且乘2不会爆ll
const ll mod = 998244353;
#define mem(a, b) memset(a, b, sizeof(a))//ll inv(ll b){ return b == 1? 1: (mod-mod/b)*inv(mod%b)%mod;}
ll ksm(ll a, ll b)
{ll ans = 1;while(b){if(b&1)ans = ans*a%mod;a = a*a%mod;b >>= 1;}return ans;
}
int main()
{ll n;while(cin >> n){cout << ((n*n-1)*ksm(9, mod-2))%mod << '\n';}return 0;
}

问题虫洞——F:F - Fansblog HDU - 6608

黑洞内窥:

多组样例t,

每组样例给你一个质数 p (1e9 <= p <=1e14),然后你将得到p的前一个质数Q,求(Q!% p)

思维光年:

咱也不知道,咱也不敢问,,,用到了我不知道的威尔逊定理,,,,

详细请见该篇博客:F - Fansblog HDU - 6608(威尔逊定理推导)

这里就简单的给出代码了:

ACcode

//#include<bits/stdc++.h>
//std::ios::sync_with_stdio(false);
#include  <stdio.h>
#include <iostream>
#include<algorithm>
#include      <set>
#include      <map>
#include    <queue>
#include    <stack>
#include   <string>
#include   <math.h>
#include   <vector>
#include  <cstring>
#include <stdlib.h>
#include <string.h>
using namespace std;
typedef long long ll;
#define MAXN 3000005
#define INF 0x3f3f3f3f//将近ll类型最大数的一半,而且乘2不会爆ll
//const ll mod = 998244353;
#define mem(a, b) memset(a, b, sizeof(a))
ll mod;ll mul(ll a, ll b)//快速乘
{ll res = 0;while(b){if(b&1)res = (res+a)%mod;a = (a+a)%mod;b >>= 1;}return res%mod;
}ll ksm(ll a, ll b)
{ll ans = 1;while(b){if(b&1)ans = mul(ans, a);a = mul(a, a);b >>= 1;}return ans;
}bool prime(ll x)
{for(ll i=2; i*i<=x; ++i)if(x%i == 0) return 0;return 1;
}int main()
{ll t, n;cin >> t;while(t--){scanf("%lld", &n);mod = n;ll q = n-1;while(!prime(q)) q--;ll ans = n-1;for(ll i=q+1; i<=n-1; ++i)ans = mul(ans, ksm(i, mod-2));cout << ans << '\n';}return 0;
}

SDNU-多校训练赛2-[ABF]相关推荐

  1. HDU6578 2019HDU多校训练赛第一场 1001 (dp)

    HDU6578 2019HDU多校训练赛第一场 1001 (dp) 传送门:http://acm.hdu.edu.cn/showproblem.php?pid=6578 题意: 你有n个空需要去填,有 ...

  2. 【2019杭电多校训练赛】HDU6681 / 1002-Rikka with Cake 题解(扫描线)

    [2019杭电多校训练赛]HDU6681 / 1002-Rikka with Cake 题解 题意 思路 代码 题目来自于:HDU6681 Rikka with Cake 题意 题目的大意是给定你一个 ...

  3. 2018牛客网暑假ACM多校训练赛(第二场)E tree 动态规划

    原文链接https://www.cnblogs.com/zhouzhendong/p/NowCoder-2018-Summer-Round2-E.html 题目传送门 - 2018牛客多校赛第二场 E ...

  4. 2018牛客网暑假ACM多校训练赛(第三场)I Expected Size of Random Convex Hull 计算几何,凸包,其他...

    原文链接https://www.cnblogs.com/zhouzhendong/p/NowCoder-2018-Summer-Round3-I.html 题目传送门 - 2018牛客多校赛第三场 I ...

  5. 2013多校训练赛第三场 总结

    HDU 4621~4631 今天的多校好变态,是IOI冠军出的题,把我们虐的半死了. 简单讲一下今天的情况,今天就只做了两道水题,算是签了个到,然后就卡1011(HDU 4631)一个下午了.其实感觉 ...

  6. 北方大学 ACM 多校训练赛 第十五场 欢度6.18

    把式子变成a[i]+1 = p(a[i-1]+1)+q[a[i-2]+1],矩阵快速幂搞定.复杂度o(logn) #include <iostream> #include <cstd ...

  7. 北方大学 ACM 多校训练赛 第十五场 买花

    显然是一个比较简单的离线查询问题. 本质上是对区间求集合的问题,按照区间右端点从小到大对区间进行排序,然后用一个指针curr表示当前正在考虑区间的最右侧位置,针对排好序区间[tarl,tarr],先查 ...

  8. 北方大学 ACM 多校训练赛 第十五场 数字游戏

    本题的意思是,给你1/2,1/2,1,2,4--2^(k-1) ,让你在左边的数列中添加+号或者-号,使得最终的答案为n即可. 思路: 我们知道上面这些数直接如果全部都填+号的话,那么最终得到的数为2 ...

  9. 北方大学 ACM 多校训练赛 第十五场 蜘蛛牌A

    题目描述 XCX最近迷上了玩蜘蛛牌.蜘蛛牌是windowsxp操作系统自带的一款纸牌游戏,游戏规则是这样的:只能将牌拖到比它大一的牌上面(A最小,K最大),如果拖动的牌上有按顺序排好的牌时,那么这些牌 ...

  10. 2018牛客网暑假ACM多校训练赛(第六场)I Team Rocket 线段树

    原文链接https://www.cnblogs.com/zhouzhendong/p/NowCoder-2018-Summer-Round6-I.html 题目传送门 - https://www.no ...

最新文章

  1. PHP 7.3声称速度比PHP 5快3倍还多,值得更新了!
  2. SpringMVC学习10之AJAX初体验和了解
  3. gbdt如何处理多分类问题(multiclass,cart)
  4. Unity 3D观察者设计模式-C#委托和事件的运用
  5. Ubuntu20.04开机界面(boot animation)改成Windows95
  6. P7115-[NOIP2020]移球游戏【构造】
  7. qt 串口 环形缓存_qt linux串口 缓冲区多大
  8. java和C++有什么异同
  9. Mqtt协议IOS端移植3
  10. 【VB.NET】测验题目Quiz1
  11. 科学数字_Excel分列时拒绝让超过15位的数字变成科学计数法
  12. Flutter布局锦囊---带彩条的文本字段
  13. 实验代做 行人识别_《行人跨模态重识别 | 双向限制的排序损失》
  14. Linux环境下虚拟化之KVM常用命令
  15. 谷歌离线地图开发教程
  16. 利用图神经网络进行社交机器人检测
  17. MaterialDesign+MovePicImageView实现漂亮的登陆界面
  18. 对本人所发资源“金山词霸2010牛津旗舰版安装及故障终极解决方案”的说明
  19. GDOI2016模拟8.19数学
  20. 晶体生长计算机实验报告,食盐晶体生长实验报告

热门文章

  1. ElasticSearch【从入门到服务器部署项目案例】详细教程
  2. WordPress修改默认邮箱、用户名(图解)
  3. 微信迎来最新改版,做这几款微信插件提高用户体验!
  4. butter中文意思_butterfly是什么意思_butterfly的翻译_音标_读音_用法_例句_爱词霸在线词典...
  5. 利用dlib81人脸关键点提取额头脸颊ROI
  6. ImageJ工具的使用
  7. 充电宝不能托运只能随身带
  8. 域名故事:史上超贵的域名成交记录
  9. 神经网络系统理论与实践,神经网络系统理论基础
  10. XSS跨站脚本攻击与CSRF跨站请求伪造攻击的学习总结。