- 博客(297)
- 资源 (1)
- 收藏
- 关注
原创 【51nod】3145 扔球游戏
扔球游戏Link解题思路考虑每一位上的期望为:nn+m×mn+m−1\frac{n}{n+m}\times\frac{m}{n+m-1}n+mn×n+m−1m ,一共有 n+m−1n+m-1n+m−1 位,所以 ans=nmn+mans=\frac{nm}{n+m}ans=n+mnm 。code#include<iostream>#include<cstdio>using namespace std;int n,m;int gcd(int x,int
2022-05-04 08:52:29
1057
1
原创 【51nod】1632 B君的连通
B君的连通Link题目大意B国拥有n个城市,其交通系统呈树状结构,即任意两个城市存在且仅存在一条交通线将其连接。A国是B国的敌国企图秘密发射导弹打击B国的交通线,现假设每条交通线都有50%的概率被炸毁,B国希望知道在被炸毁之后,剩下联通块的个数的期望是多少?解题思路因为这是一棵树,所以每炸断一条路就会多一个连通块,所以期望为12(n−1)+1\frac{1}{2}(n-1)+121(n−1)+1 ,再乘上2n−12^{n-1}2n−1 即可。code#include<iostrea
2022-05-04 08:36:22
263
原创 【51nod】1639 绑鞋带
绑鞋带Link题目描述有n根鞋带混在一起,现在重复n次以下操作:随机抽出两个鞋带头,把它们绑在一起。可以想象,这n次之后將不再有单独的鞋带头,n条鞋带系成了一些环。那么有多大概率刚好所有这些鞋带只形成了一个环?解题思路code#include<iostream>#include<cstdio>using namespace std;int n;double ans=1;int main(){ cin>>n; for(int i=2*n-
2022-05-03 21:20:26
292
原创 【51nod】1381 硬币游戏
硬币游戏Link解题思路所有情况都可以平移为与平行线相切的情况,则期望为 2n2n2n 。若硬币上下都与平行线相切,那么期望为 2n+12n+12n+1 。但是相切的情况概率太小,所以忽略不计。所以期望为 2n2n2n 。code#include<iostream>#include<cstdio>using namespace std;int T;int r;int main(){ cin>>T; while(T--) { s
2022-05-03 20:27:23
973
原创 【POJ】1845 Sumdiv
SumdivLink解题思路显然,aba^bab 的分解质因数就是 aaa 的分解质因数数量每个乘以 bbb 。求和直接用等比数列求和公式即可。code#include<iostream>#include<cstdio>#include<cmath>#define int long longusing namespace std;const int mod=9901;int a,b,ans;int x[10000],y[10000],to
2022-02-26 10:29:56
218
原创 【51nod】3210 二进制统计
二进制统计Link解题思路暴力统计即可。code#include<iostream>#include<cstdio>using namespace std;int n;int ans[40]; int count(int t){ int s=0; while(!(t&1)) s++,t>>=1; return s;}int main(){ cin>>n; for(int i=1;i<=n;i++
2022-02-26 08:43:47
246
原创 【51nod】2527 Or 和 Sum
Or 和 SumLinkcode#include<iostream>#include<cstdio>#define int long longusing namespace std;int a,b,c;signed main(){ cin>>a>>b; c=b-a; if(a>b) printf("Impossible\n"); else if((a&c)==c) printf("Possible\n"
2022-02-26 08:23:26
165
原创 【51nod】3395 n位格雷码
n位格雷码Link解题思路若某一位上数字和上一位相等,那这一位就是 111 ,否则是 000 ,就可以用亦或来做。code#include<iostream>#include<cstdio>#define int long longusing namespace std;int n;void output(int x){ int a[20],tot=0; while(x) a[++tot]=x%2,x>>=1; for(int i=n;
2022-02-19 16:31:07
309
原创 【51nod】2106 一个奇数次
一个奇数次Link解题思路如果一个数被亦或两次,那么相当于没有亦或。数据中只有一个出现奇数次的数,所以把所有数亦或一遍,结果就是奇数次的数。code#include<iostream>#include<cstdio>using namespace std;int n,ans;int main(){ cin>>n; for(int i=1;i<=n;i++) { int t; scanf("%d",&t); an
2022-02-19 15:52:44
334
原创 【51nod】3216 授勋
授勋Link解题思路二进制拆分。code#include<iostream>#include<cstdio>using namespace std;int n;int main(){ cin>>n; while(n--) { int a,ans=0; scanf("%d",&a); while(a) { ans+=a&1; a>>=1; } printf("%d\n",ans
2022-02-19 15:50:15
320
原创 【51nod】2102 或减与
或减与Link解题思路大难题,比 a+b problema+b~problema+b problem 难多了(code#include<iostream>#include<cstdio>using namespace std;int a,b;int main(){ cin>>a>>b; cout<<(a|b)-(a&b)<<endl;}...
2022-02-19 15:48:18
352
原创 【51nod】3047 位移运算
给出两个数a,b。问a能否只通过位移运算( >>和 << 可以多次使用)变成b。如果可以输出"Yes",否则输出"No"。
2022-02-19 15:35:00
580
原创 【POJ】1066 Treasure Hunt
Archeologists from the Antiquities and Curios Museum (ACM) have flown to Egypt to examine the great pyramid of Key-Ops. Using state-of-the-art technology they are able to determine that the lower floor of the pyramid is constructed from a series of straigh
2022-01-20 16:43:24
428
原创 【总结】2022.01.19期末总结
文章目录友链前言Day −NDay~-NDay −NDay −MDay~-MDay −MDay 0Day~0Day 0Day 1Day~1Day 1语文历史政治化学晚修Day 2Day~2Day 2英语数学物理总结友链先空着,到时候再说。前言上了初三之后就没有写过总结了,因为没时间 (懒得写) 。初三学习莫名其妙压力贼大,周围的人都在卷,老师也在催着卷,使得我们不得不卷。(其实感觉卷没卷都差不多,徒
2022-01-20 10:18:56
1802
原创 【51nod】3111 小明爱拦截
小明爱拦截Link解题思路导弹拦截的一半操作,求最长不上升子序列。每个数取负,当成最长不下降子序列来做。贪心把每个数塞入序列中,二分找位置或加入尾部、答案 ++++++。code#include<algorithm>#include<iostream>#include<cstdio>using namespace std;int n,ans,t;int a[100010];int main(){ cin>>n>>
2022-01-19 20:20:32
261
原创 【SSL】266⑥ 勇闯黄金十二宫射手宫
勇闯黄金十二宫射手宫Link解题思路将后一个序列映射出来,贪心+二分选择。code#include<algorithm>#include<iostream>#include<cstdio>using namespace std;int n,ans;int a[100010];int b[100010];int c[100010];int main(){ cin>>n; for(int i=1;i<=n;i++)
2022-01-19 16:09:23
1593
原创 【SSL】1280 全排列
全排列Link解题思路用 STLSTLSTL 中的 next_permutationnext\_permutationnext_permutation 直接生成全排列。code#include<algorithm>#include<iostream>#include<cstdio>using namespace std;int n;int a[10];int main(){ cin>>n; for(int i=1;i<
2022-01-19 10:11:15
954
原创 【51nod】2596 邻之差为K
邻之差为KLink解题思路DFSDFSDFS 暴力跑。code#include<iostream>#include<cstdio>using namespace std;int n,m;void dfs(int dep,int s){ if(dep==n) { cout<<s<<" "; return; } if(s%10-m>=0) dfs(dep+1,s*10+s%10-m); if(s%10+m&l
2022-01-19 09:50:18
182
原创 【51nod】3058 小明爱集合
小明爱集合Link解题思路因为集合内不会重复,setsetset 不兼容重复,所以直接把所以数据丢到 setsetset 里面,最后 n+mn+mn+m 和剩下数字的差就是重复的个数。code#include<iostream>#include<cstdio>#include<set>using namespace std;int T;int n,m,t;set<int> a;int main(){ cin>>
2022-01-19 09:34:27
324
原创 【51nod】3057 数字去重
数字去重Link解题思路setsetset 操作模板。code#include<iostream>#include<cstdio>#include<set>using namespace std;int n;set<int> a;int main(){ cin>>n; for(int i=1;i<=n;i++) { int t; scanf("%d",&t); a.insert(t);
2022-01-19 08:32:23
267
原创 【51nod】3059 最近的一对
最近的一对Link解题思路mapmapmap 存储每个数上次出现的位置。code#include<iostream>#include<cstdio>#include<map> using namespace std;int n,l,r=0x3f3f3f3f,ans;map<int,int> a;int main(){ cin>>n; for(int i=1;i<=n;i++) { int t; s
2022-01-19 08:14:05
208
原创 【51nod】3202 子集和判断
子集和判断Link解题思路mapmapmap 存 AAA ,对 BBB 判断。code#include<iostream>#include<cstdio>#include<map>using namespace std;int T;int n,m;map<int,int> a;int main(){ cin>>T; while(T--) { scanf("%d%d",&n,&m);
2022-01-19 08:06:20
199
原创 【51nod】1094 和为k的连续区间
和为k的连续区间Link解题思路前缀和暴力判断。code#include<iostream>#include<cstdio>#define int long long using namespace std;int n,m;int a[10010];signed main(){ cin>>n>>m; for(int i=1;i<=n;i++) scanf("%lld",&a[i]),a[i]+=a[i-1]
2022-01-18 22:06:10
93
原创 【51nod】2456 最小约数 V2
最小约数 V2Link解题思路排序,暴力。code#include<algorithm>#include<iostream>#include<cstdio>using namespace std;int n,maxn;int a[1010];int main(){ cin>>n; for(int i=1;i<=n;i++) scanf("%d",&a[i]),maxn=max(maxn,a[i]); so
2022-01-18 21:52:44
160
原创 【51nod】3200 学习委员候选人
学习委员候选人Link解题思路模拟。分别对语文、数学排序,得到排名后判断是否满足条件,记录权值再排序。code#include<algorithm>#include<iostream>#include<cstdio>#include<string>using namespace std;int n;int v[50010];string nam[50010];struct abc{ int num,id;}yw[50010
2022-01-18 21:28:06
147
原创 【51nod】3056 小明爱数列
小明爱数列Link解题思路vectorvectorvector 操作模板题。code#include<bits/stdc++.h>using namespace std;int n,T;vector<int> a;int main(){ cin>>n>>T; for(int i=1;i<=n;i++) { int t; scanf("%d",&t); a.push_back(t); } while
2022-01-18 19:39:42
328
原创 【POJ】1654 Area
AreaLink题目大意规定 1−41-41−4 分别代表,向右下走,向右走,向右上走,向下走,555 代表回到原点,6−96-96−9 代表,向上走,向左下走,向左走,向左上走。多组数据,每组数据从 (0,0)(0,0)(0,0) 开始,求描绘出多边形的面积。PSPSPS:不要管题目写的什么东西,英文翻译过来完全是错的。解题思路模拟图形,计算几何求面积。code#include<iostream>#include<cstring>#include<cs
2022-01-18 15:39:22
114
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人