ICode9

精准搜索请尝试: 精确搜索
  • 51Nod - 16322020-04-25 09:57:17

    B国拥有n个城市,其交通系统呈树状结构,即任意两个城市存在且仅存在一条交通线将其连接。A国是B国的敌国企图秘密发射导弹打击B国的交通线,现假设每条交通线都有50%的概率被炸毁,B国希望知道在被炸毁之后,剩下联通块的个数的期望是多少? Input一个数n(2<=n<=100000) 接下来n-1行,每行两个数x

  • [51nod] 2982 大逃杀2020-04-08 21:56:59

    问题描述 α−76星人入侵地球,尽管英勇的地球卫士们奋勇杀敌,但战火依然烧到了地球本球上,为了维护人类的利益,联合国决定建立m个避难所,第i个避难所能容纳ci个人,坐标为(pi,qi)。现在地球上还残余着n个国家,第i个国家有bi个人,坐标为(xi,yi),现在联合国给出了一个初步的疏散方案,即一个n*m

  • [51nod 1850] 抽卡大赛2020-04-01 23:07:27

    问题描述 51Nod为了活跃比赛前的气氛,组织了场抽卡比赛。这场比赛共 n 个人参加,主办方根据非欧血统鉴定器,得到了一些数据。每个人抽卡有 Mi 种可能,得到的卡能力值为 Aij 代价为 Gij 的可能性为 Pij ,所谓代价指的是玩家需要将一轮比赛后所得的点头盾的 Gij% 交给主办方。每轮比赛每

  • 51nod 1001 数组中和等于K的数对(STL/双指针)2020-03-13 11:44:47

    给出一个整数K和一个无序数组A,A的元素为N个互不相同的整数,找出数组A中所有和等于K的数对。例如K = 8,数组A:{-1,6,5,3,4,2,9,0,8},所有和等于8的数对包括(-1,9),(0,8),(2,6),(3,5)。 输入 第1行:用空格隔开的2个数,K N,N为A数组的长度。(2 <= N <= 50000,-10^9 <= K <= 10^9) 第2 - N

  • @51nod - 1132@ 覆盖数字的数量 V22020-03-09 12:55:04

    目录 @description@ @solution@ @accepted code@ @details@ @description@ 给出2个整数A,B。可以使用任意次。再给出一段从X - Y的区间T,任选若干个A,B做加法,可以覆盖区间T中多少个不同的整数。 例如:A = 8,B = 11,区间T为3 - 20。在3 - 20中,整数8(8),11(11),16(8+8),19(8+11)。

  • [51nod 1766] 树上的最远点对 - 树的直径,线段树2020-03-08 14:52:28

    \(n\) 个点被 \(n-1\) 条边连接成了一颗树,给出 \(a \to b\) 和 \(c\to d\) 两个区间,表示点的标号请你求出两个区间内各选一点之间的最大距离,即你需要求出 \(\max(dis(i,j) |a<=i<=b,c<=j<=d)\) Solution 如果我们有 \(S_1,S_2\) 两个点集合,那么 \(S_1,S_2\) 各取一个点获得最大距

  • 51Nod--1019--逆序对数--线段树2020-02-28 09:41:22

    在一个排列中,如果一对数的前后位置与大小顺序相反,即前面的数大于后面的数,那么它们就称为一个逆序。一个排列中逆序的总数就称为这个排列的逆序数。 如2 4 3 1中,2 1,4 3,4 1,3 1是逆序,逆序数是4。给出一个整数序列,求该序列的逆序数。 Input 第1行:N,N为序列的长度(n <= 50000) 第2 - N

  • [51nod 1126] 求递推序列的第N项 - 矩阵乘法2020-02-24 22:04:45

    #include <bits/stdc++.h> using namespace std; #define int long long const int mod = 7; struct matrix { int a[5][5]={}; int n,m; }; matrix I(int n) { matrix ret; ret.n=n; ret.m=n; for(int i=1;i<=n;i++) ret.a[i][i]=1;

  • 51nod 1002 数塔取值问题 dp2020-02-24 13:01:36

    动态规划 1002 数塔取数问题 1.0 秒   131,072.0 KB   5 分   1级题   一个高度为N的由正整数组成的三角形,从上走到下,求经过的数字和的最大值。 每次只能走到下一层相邻的数上,例如从第3层的6向下走,只能走到第4层的2或9上。      5   8 4  3 6 9 7 2 9 5   例

  • 51nod 1254 最大子段和 V22020-02-06 16:06:56

    \(dp[i][0/1]\) 表示考虑前 \(i\) 个元素,以 \(i\) 结尾的最大子段和,\(0\) 表示还未交换过,\(1\) 表示已经交换过 \(dp[i][0] = a[i] + \max\{dp[i-1][0],0\}\) \(dp[i][1] = \max\{dp[i][0],dp[i-1][1]+a[i],dp[i-1][0]+\max\{pre[st[i-1]-1],a[i]\},\max\{pre[i-1]\}\}\) \(pre

  • 《数据结构与算法:高精度》2020-01-29 11:05:11

    题目 PAT-B 1079 延迟的回文数【字符串+大数加法】 PAT-B 1017 A除以B【模拟 大数除法】 51Nod_1185 威佐夫游戏 V2 51Nod_1873 初中的算术【高精度小数】 51Nod_1130 N的阶乘的长度 V2(斯特林近似) 51Nod_1057 N的阶乘 51Nod_1029 大数除法 51Nod_1028 大数乘法 V2 51Nod_1027

  • 约瑟夫环以及其变种集合2020-01-28 11:51:21

    最近在CF上补题,补到了一道关于约瑟夫环的题目(听都没听过,原谅我太菜) 就去好好学了一下,不过一般的题目应该是不会让你模拟过的,所以这次就做了一个约瑟夫环公式法变形的集合。 首先是最原始的约瑟夫环的题目:https://vjudge.net/problem/51Nod-1073(小数据规模) https://vjudge.net/prob

  • POJ 3270. Cow Sorting & 51nod 1125 交换机器的最小代价2020-01-23 18:54:28

        根据题意,需要交换的部分会形成若干个不相交的环,独立处理每个环。 每个环可以用环内的最小值去和其它元素交换,或者用全局最小值和环上最小值交换,做一遍再交换回去。 #include <cstdio> #include <cstring> const int MOD = 9973; int m, n, k; void M(int &a) { if (

  • 51Nod 2026 Gcd and Lcm2020-01-14 20:54:25

    题目传送门 分析: 开始玩一个小小的trick 我们发现\(f(n)=\sum_{d|n}\mu(d)\cdot d\)是一个积性函数 所以: \(~~~~f(n)=\prod f(p_i^{a_i})\) \(~~~~f(gcd(x,y))\cdot f(lcm(x,y))=\prod f(p_i^{min(a_i,b_i)})\cdot f(p_i^{max(a_i,b_i)})\) 可以疯狂使用交换律然后。。。 \(~~~~\p

  • 51nod 题目口胡(1)2020-01-14 12:39:34

    51nod 题目口胡(1) 1039 X^3 Mod P 令g为P的原根,不妨设 gt1≡X(modP)g^{t_1}\equiv X \pmod{P}gt1​≡X(modP),gt2≡A(modP)g^{t_2}\equiv A \pmod{P}gt2​≡A(modP) (求离散对数) 显然有3t1≡t2(modP−1)3t_1 \equiv t_2 \pmod{P-1}3t1​≡t2​(modP−1) 求出离散对数t2之后, t

  • 门xx丝各水流2019-12-07 18:55:57

        还有好多东西没做     无限之环     星际竞速     4823: 老C的方块     2007: 海拔     51nod 1551 集合交易     

  • 51nod 1590 合并数字2019-10-21 20:06:27

    1590 合并数字 STL - List 练习题, 直接用 List 模拟题意即可,或者手写链表也行。 #include <bits/stdc++.h> using namespace std; const int N = 1e4 + 10; list<int> List[N]; int main(){ int n,x,y,y_idx,x_idx; cin >> n ; for(int i = 1;i <= n; ++i){//初始化全

  • 51NOD 1237 最大公约数之和 V3(杜教筛)2019-10-18 23:00:56

    题意 求 $\sum_{i=1}^n \sum_{j=1}^n gcd(i,j)$. 分析 $$\begin{aligned}\sum_{i=1}^n \sum_{j=1}^n gcd(i,j)  &= \sum_{i=1}^n \sum_{j=1}^n d[gcd(i, j)=d] \\&= \sum_{d=1}^n d \sum_{i=1}^n \sum_{j=1}^n[gcd(i,j=d)] \\&= \sum_{d=1}^n d \sum_{

  • 51nod 算法马拉松35(A-D)2019-10-04 22:52:15

    挺好玩的一场比赛。 链接 A 打表,打到\(2e4\)左右会发现有一个长度\(104\)的循环节。 #include<bits/stdc++.h> using namespace std; int col[5010][5010]; int dx[4] = {1,0,-1,0},dy[4] = {0,1,0,-1}; long long n,tem=0; int main() { cin >> n; int x=0,y=0,d=0;

  • 51nod 算法马拉松35 E2019-10-04 22:50:47

    有这样一段两两求最大公约数的程序CoGcd, int Gcd(int x, int y){ if(y == 0)return x; return Gcd(y, x % y); } void CoGcd(int m){ for(int i = 1; i <= m; i++) for(int j = 1; j <= m; j++) Gcd(i, j); } 给出m的值,进行t次询问,每次询问包含一对x

  • 51nod 1202不同子序列个数2019-10-03 23:03:28

    题意 求本质不同子序列的数量。 传送门 思路 思路一:\(dp[i] = \sum_{j=last[a[i]]}^{i-1} dp[j]\) \(dp[i]\) 表示第 i 位数字作为子序列的最后一位的数量。 当\(a[i]\) 未出现过时: \(dp[i]\) 可从之前所有状态包括空串转移过来,即:\(dp[i] = \sum_{j=0}^{i-1}dp[j]\)。 当\(a[i]\)

  • 51Nod 2642 质数的和与积 c/c++题解2019-09-20 21:01:16

    题目描述 两个质数的和是S,他们的积最大是多少? 输入 一个不大于10000的正整数S,为两个质数的和。 输出 一个整数,为两个质数的最大乘积。数据保证有解。 输入样例 21 输出样例 38 题解: 求出≥s的第一个素数,把前面的素数都放入一个数组,然后开一个O(n2)的枚举即可。 代码: #i

  • 51nod二级题题解(补充中)2019-09-13 22:38:30

    二级题(68): 1007 正整数分组(dp) 1050 循环数组最大子段和(dp) 1031 骨牌覆盖(斐波拉契数列) 1062 序列中最大的数(暴力) 1133 不重叠的线段(贪心) 1428 活动安排问题(贪心,任务调度) 1432 独木舟(贪心) 1433 0和5

  • 51nod 2006 飞行员配对(二分图最大匹配)2019-09-02 10:08:12

    题目链接 #include <iostream> #include <vector> #include <cstring> using namespace std; const int N = 103; int n, m; vector<int> G[N]; int match[N], st[N]; bool find(int x){ for(int j = 0; j < G[x].size(); j++){ int v = G[x][j];

  • 51nod 初学者题库 1级题 python题解2019-08-27 12:52:45

    学python嘻嘻,每题第一个是自己的代码,后面的是看见有些好的代码就顺手保存一波了~侵删   1916 购物 import mathdef isok(X: int,L: int, Z:int)->bool: if(Z>=180) : Z = 360 - Z; if(5*L*1.0 >= math.pi*Z*X/90) : return True return FalseT = int(input())while(T):

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有