摘要:
题目描述 如题,给出一个无向图,求出最小生成树,如果该图不连通,则输出orz 输入输出格式 输入格式: 第一行包含两个整数N、M,表示该图共有N个结点和M条无向边。(N<=5000,M<=200000) 接下来M行每行包含三个整数Xi、Yi、Zi,表示有一条长度为Zi的无向边连接结点Xi、Yi 输出 阅读全文
摘要:
题意: 给定n,a,求区间 [ 1 , 1<<n ] 的数b 满足 的个数 分析:打出暴力程序可以发现当a为奇数的时候结果为一; 当a为偶时 , a^b=2^(k+b)mod 2^n ; 结果肯定为0 ; 那就有b^a mod 2^n=0 ; 则 b也为偶数 ,在分析: 然后分类讨论 b <= n时 阅读全文
摘要:
比赛的时候规律题是很常见的事情 ,所以这里做下总结。 解题分几个步骤; 1 : 首先规律题的数据规模是大的 , 可以说如果结果是数字样的话,而且数据大很有可能的规律; 2 : 暴力打表找到前面10位数字; 2(1) : 如果足够强大可以根据某种灵性的解法得出答案(我是不够灵的。。) 3 :如果足够强 阅读全文
摘要:
#include<stdio.h> #include<string> #include<string.h> #include<iostream> using namespace std; //compare比较函数:相等返回0,大于返回1,小于返回-1 int compare(string str1 阅读全文
摘要:
/* 高精度进制转换 把oldBase 进制的数转化为newBase 进制的数输出。 调用方法,输入str, oldBase newBase. change(); solve(); output(); 也可以修改output(),使符合要求,或者存入另外一个字符数组,备用 */ #include<s 阅读全文
摘要:
有坑!!!当x==0时,因为y>0,a,b不能同时为0,所以答案要-1 #include<iostream> #include<cstdlib> #include<cstdio> #include<string> #include<vector> #include<deque> #include<q 阅读全文
摘要:
题意: 给定S,N,把S+1,S+2,...S+N这N个数填到1,2,...,N里,要求X只能填到X的因子的位置。(即X%Y=0,那么X才能放在Y位置) 问是否能够放满。 分析:经过小队的分析得出的结论是如果S+1,S+2,...S+N有两个素数就肯定是不行的对吧 ,虽然素数可以取本身当如果素数可以 阅读全文
摘要:
题意: 给出n个炸弹的信息 :坐标x , 坐标y , 爆炸半径 , 成本: 如果一个炸弹被引爆那这个范围的都爆炸 , 问最小的成本是多少? 题意:首先先来个n^2 暴力出某个炸弹爆炸波及的其他炸弹,用一条有向边来连接 , 然后找到强连通分量 ,缩点 , 就可以形成一张新的有向图 , 那是不是就是所有 阅读全文
摘要:
题意:求[a,b]中,偶数位的数字都是d,其余为数字都不是d,且能被m整除的数的个数(这里的偶数位是的是从高位往低位数的偶数位)。a,b<10^2000,m≤2000,0≤d≤9 a,b<10^2000,m≤2000,0≤d≤9 题解:用f[i][j]表示有i+1位,第i位是d,且%m=j的数的个数 阅读全文
摘要:
题意: 给你三个数字L, R, K,问在[L, R]范围内有多少个数字满足它每一位不同数字不超过k个,求出它们的和 分析:考虑用状态压缩 , 10给位0~9 , 如果之前出现过了某个数字x ,那就拿当前的状态 st | (1<<x) , 表示这个数字出现了 , 那st的二进制有多少的1 , 就有多少 阅读全文