9.19[XJOI] NOIP训练37
上午[XJOI] NOIP训练37
T1 同余方程
Problem description
已知一个整数a,素数p,求解 $x^{2}\equiv a(mod p) $ 是否有整数解
Solution
据说是二次剩余
作为一个蒟蒻,非常不正经的来证一下
由于p是质数,所以(1) 当p=2,则一定有解
(2) 如果p<>2
\(x\equiv a^{\frac{1}{2}}(mod p)\)
\(x^{p-1}\equiv a^{\frac{p-1}{a}}(modp)\)
又因为费马小定理
\(x^{p-1}\equiv 1(modp)\)
所以\(a^{\frac{p-1}{2}}\equiv 1(modp)\),
这样就很完美的得到了答案
Code
#include<bits/stdc++.h>
#define ll long long
using namespace std;
ll T,a,p,ans;
ll pow(ll a,ll b){
ll res=1,base=(b-1)/2;
if (a==0) return 0;
while(base){
if (base&1) res=res*a%b;
base>>=1; a=a*a%b;
}
return res;
}
int main(){
scanf("%d",&T);
while (T--){
scanf("%lld%lld",&a,&p);
ans=pow(a,p);
if (ans==1) printf("YES\n");
else printf("NO\n");
}
}
T2 重复串
Problem description
求最少删掉几个字符,使得最后答案成为重复串
Solution
这可能是我做过最简单的T2吧,
最暴力的O(\(n^{3}\))Dp,枚举中点,然后做一个lcs
T3 摘苹果
Solution
直接进行树上贪心,对于每个节点,将它的每个子节点当做一个叶子结点(及合并了子树的信息),
然后找出最大的l,然后判断哪些子节点的r小于这个l,那么这说明只能独立减掉。
其他的节点则可以合并到根节点上,变成一个节点,只是lr变了一下而已。
(此段文字为whc大佬所言) 在此%%%whc
Code
#include<bits/stdc++.h>
using namespace std;
int l,r,ans=0;
void dfs(int &l,int &r){
int k,x,y;
l=0; scanf("%d",&k);
if (k==0) scanf("%d%d",&l,&r);
else {
vector <int> a;
for (int i=0;i<k;++i)
dfs(x,y),l=max(l,x),a.push_back(y);
sort(a.begin(),a.end());
for (int i=0;i<k;++i)
if (a[i]<l) ++ans;
else{
r=a[i]; return;
}
}
}
int main(){
dfs(l,r);
printf("%d",ans+1);
return 0;
}
下午及晚上
非常快的迅速订完题目,然后的然后,我也不知道了
一日总结
今天破天荒的用了一下markdown来写博客
对于这个不能调字体我也是非常无奈啊
决定如果没有数学题,绝不用markdown
还有这里我要严重吐槽一下各科老师,对!所有老师!
一次又一次的加深了我对xj的**感情
当然我会努力只在这里呆一年的,但对于在这儿的每一天,我一定都会过好
9.19[XJOI] NOIP训练37的更多相关文章
- 9.18[XJOI] NOIP训练36
***在休息了周末两天(好吧其实只有半天),又一次投入了学车的怀抱,重新窝在这个熟悉的机房 今日9.18(今天以后决定不写打卡了) 日常一日总结 一个昏昏欲睡的早晨 打了一套不知道是谁出的题目,空间限 ...
- 9.14[XJOI] NOIP训练33
今日9.14 洛谷打卡:大凶!!!(换个字体玩玩qwq) -------------------------------------------------------- 一个超颓的上午 今天又是fl ...
- 9.13[XJOI] NOIP训练32
今日9.13 洛谷打卡:小吉(今天心情不错,决定取消密码) (日常记流水账) 上午 今天听说是鏼鏼的题目,题面非常的清真啊,也没有当初以为的爆零啊 T1 排排坐 非常非常清真的模拟或是结论题,再次将难 ...
- Noip 训练指南
目录 Noip 训练指南 图论 数据结构 位运算 期望 题解 Noip 训练指南 目前完成 \(4 / 72\) 图论 [ ] 跳楼机 [ ] 墨墨的等式 [ ] 最优贸易 [ ] 泥泞的道路 [ ] ...
- 2018.10.19 NOIP训练 变化的序列(线性dp)
传送门 f[i][j]f[i][j]f[i][j]表示后iii个对答案贡献有jjj个a的方案数. 可以发现最后a,ba,ba,b的总个数一定是n∗(n−1)/2n*(n-1)/2n∗(n−1)/2 因 ...
- 2018.10.19 NOIP训练 桌子(快速幂优化dp)
传送门 勉强算一道dp好题. 显然第kkk列和第k+nk+nk+n列放的棋子数是相同的. 因此只需要统计出前nnn列的选法数. 对于前mmm%nnn列,一共有(m−1)/n+1(m-1)/n+1(m− ...
- 2018.10.19 NOIP训练 游戏问题(分组背包)
传送门 分组背包经典问题. 令f[i][j]f[i][j]f[i][j]表示前iii组花费为jjj的最优值. g[i][j]g[i][j]g[i][j]表示前iii组,第iii组已经支付了平台费用的最 ...
- 2018.10.19 NOIP训练 yk赚钱记(01分数规划)
传送门 其实是一个裸的最优比率生成树. 注意精度的控制就行了. 代码
- test20190803 夏令营NOIP训练19
60+100+0=160 贪婪大陆 面对蚂蚁们的疯狂进攻,小FF的Tower defence宣告失败--人类被蚂蚁们逼到了Greed Island上的一个海湾.现在,小FF的后方是一望无际的大海, 前 ...
随机推荐
- MFC和OpenCV结合
最重要的一点:如何把OpenCV的框嵌入MFC的ID.. 把cv显示框嵌入 pic控件 cvNamedWindow("kalman"); HWND hWnd = (HWND) cv ...
- MFC 缩放和显示IplImage
序言:使用OpenCV嵌入MFC的框内,图像大小不能和框大小进行匹配,因此需要缩放,使图像适用于MFC框. 后来找到了一种新的方法,此方案貌似u已经废弃. (1).在MFC中显示图片 void CAv ...
- js replace替换所有字符
'abc...'.replace(new RegExp('oldStr', 'gm'), 'newStr')
- sql server 查询时间 格式化输出
use test select * from vote insert into vote (contents) values(GETDATE()) insert into vote (contents ...
- <转>c++引用与指针的区别(着重理解)
★ 相同点: 1. 都是地址的概念: 指针指向一块内存,它的内容是所指内存的地址:引用是某块内存的别名. ★ 区别: 1. 指针是一个实体,而引用仅是个别名: 2. 引用使用时无需解引用(*),指 ...
- nginx设置跳转https
在监听80端口的内部,添加一句代码:rewrite ^(.*)$ https://$host$1 permanent;
- 国密SSL证书申请免费试用
沃通提供国密SSL证书免费申请试用服务,一次申请可同时签发SM2/RSA双算法证书,试用周期1个月,用于测试国密SM2 SSL证书的运行效果和SM2/RSA双证书部署效果. 试用产品:SM2/RSA双 ...
- MySQL的EXPLAIN命令用于SQL语句的查询执行计划
MySQL的EXPLAIN命令用于SQL语句的查询执行计划(QEP).这条命令的输出结果能够让我们了解MySQL 优化器是如何执行SQL 语句的.这条命令并没有提供任何调整建议,但它能够提供重要的信息 ...
- eas之去掉关闭eas页面时校验是否修改的提示
EditUI-------> public boolean checkBeforeWindowClosing() { boolean b = super.checkBefo ...
- 1.Eclipse创建普通java工程
1.创建java工程 2.输入java 工程名 3.编写类