自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(52)
  • 收藏
  • 关注

原创 1098: 树状数组2(破坏公路)

题目描述题目描述: 在太平洋中心有一个圆形小岛,沿着小岛的海岸线分布着n个小镇,编号分别为1,2,3~~n;小镇i-1、小镇i、小镇i+1是相邻的(当然小镇n与小镇1相邻)。相邻小镇之间存在一条公路,公路也有编号,公路i连接小镇i和小镇i+1,公路n连接小镇n和小镇1.现在对小岛有m个操作,操作有两种: 询问操作:1 x y 代表小镇x到小镇y是否联通,联通输出1,否则输出

2017-09-27 21:16:34 520

原创 1089: 最短路入门2(道路重建)

题目描述【题意】从前有个王国,王国有N个城市,M条道路。两个城市之间最多只有一条道路。战争过后,有D条道路被摧毁了。国王想重建道路,使得最重要的两个城市A和B互通。你的工作就是决定重建哪些道路能使得AB相连并且重建的道路的长度总和最少。【输入格式】本题有多组数据。第一行为两个整数N,M(2 N*(N-1)/2),城市的编号为1、2、3…N。下来M行,每行三个整数x,

2017-09-27 18:44:55 786

原创 光合作用 (二分)

蒜头是个爱学习的孩子,他总喜欢在生活中做一些小实验,这次蒜头想研究一下光合作用。蒜头的实验材料有如下几样:神奇的种子,普通的纸箱和一些光源。一开始,蒜头将种子均匀的种在了箱子底部,你可以将其看成 XX 轴,种子的位置为 XX 轴上的点。然后蒜头用纸板将箱子盖住,并在纸板上安装了一些光源(具体见图)。神奇的种子会在有光的情况下一直向上生长直到没光为止。现在蒜头想知道当实验结束时每颗种子的高度是多

2017-09-25 20:57:50 891

原创 HDU 1010 Tempter of the Bone(奇偶减枝)

注意时间t是恰好在t时间到达D,而不是t在t时间内到达第一次接触奇偶减枝https://baike.so.com/doc/10005465-10353305.html#10005465-10353305-2#include#include#include#include#include#include#includeusing namespace std;i

2017-09-24 21:04:49 230

原创 HDU 1804 Deli Deli (String)

模拟题,顺便联系一下几个函数#include#include#include#include#include#include#includeusing namespace std;int main(){ int n,m; cin>>n>>m; map mm; for(int i=0;i<n;i++){ string s1,s2; cin>>s1>>s2;

2017-09-24 14:59:08 208

原创 HDU DNA Sorting (树状数组求逆序对)

这题就是求逆序对然后根据逆序对大小排序暴力可解!我选择的是树状数组,这题如果变种,数据过大,或者需要离散化,暴力就不好解决了离散化树状数组这题浪费挺长时间的,主要是t数组忘记清0.。导致后面的数据全部错误#include#include#include#include#include#include#includeusing namespace st

2017-09-24 14:25:15 360

原创 HDU 1288 Hat's Tea (贪心)

尽可能用多的硬币买茶贪心:首先判断一些肯定不可能的条件然后贪心一角硬币,全部使用一角硬币。如果剩下的硬币不是5的倍数。减少一角的使用,使剩下的硬币成为5的倍数然后贪心五角硬币,如果剩下的硬币不是10的倍数,减少一个五角的使用,如果五角的使用个数为0,减少5个一角的使用个数如果没有5个一角的,则不满足整体思路就是这样,注意一些if#include#include#in

2017-09-24 12:44:51 333

原创 HDU 1251 统计难题 (字典树)

又称单词查找树,Trie树,是一种树形结构,是一种哈希树的变种。典型应用是用于统计,排序和保存大量的字符串(但不仅限于字符串),所以经常被搜索引擎系统用于文本词频统计。它的优点是:利用字符串的公共前缀来节约存储空间,最大限度地减少无谓的字符串比较,查询效率比哈希表高。 http://www.cnblogs.com/tanky_woo/archive/2010/09/24/1833717.htm

2017-09-21 23:18:48 243

原创 HDU 1113 Word Amalgamation 《map》

意思就是给你几个单词组。然后输入一些单词,如果输入的单词在某种排列后在单词组里就输出,相同的按照字典序输出可以对所有的单词sort,然后比较sort后是否一样用map记录sort前的记录。map数组会根据first递增,然后根据second递增最后输出#include#include#include#include#include#include#includeusi

2017-09-21 18:13:19 212

原创 HDU 1062 Text Reverse

#include#include#include#include#include#includeusing namespace std;int main(){ int n; cin>>n; getchar(); while(n--){ char s[1000+10]; gets(s); int len=strlen(s); int flag=0; for

2017-09-21 17:42:04 211

原创 HDU 1039 Easier Done Than Said?(String模拟)

根据题意,一步一步筛选#include#include#include#include#include#includeusing namespace std;int main(){ string str; char s[100000]; string fz="aeiou"; while(cin>>str){ if(str=="end") break; if(

2017-09-21 17:13:35 155

原创 HDU 1020 Encoding (String)

记录前驱#include#include#include#include#include#includeusing namespace std;int main(){ int n; cin>>n; while(n--){ char s[10000+10]; scanf("%s",s); int len=strlen(s); int sum=1; cha

2017-09-20 23:00:09 169

原创 HDU 2100 Lovekey 大数java

java大数的应用import java.math.BigDecimal;import java.math.BigInteger;import java.util.*;public class Main{ public static void main(String[] args) { Scanner in=new Scanner(System.in);

2017-09-20 20:22:46 360

原创 HDU 1753 大明A+B java大数

用java的话要注意对末位去0其中大精度的a.add(b).stripTrailingZeros()对末尾的0进行操作import java.math.BigDecimal;import java.math.BigInteger;import java.util.*;public class Main{ public static void main(Strin

2017-09-20 20:00:55 186

原创 HDU 1250 Hat's Fibonacci JAVA大数

类似于斐波那契,给一个递推公式,qiu

2017-09-20 19:58:01 162

原创 HDU 5971 Wrestling Match(深搜)

这题题目看了谷歌翻译都没懂。。看到别人的博客发现就是一个染色问题题意:主要就是有n个人,进行了m次比赛,其中已经知道的有x个好人,y个坏人 然后让你判断能不能把好人和坏人完全分开首先先对知道身份的人进行查找,然后对没有出现的或者没有遍历到的人搜索最后输出唯一不明白的就是样例1的输出。。。然后自己限制一个x==0&&y==0 cout不懂为什么#i

2017-09-19 17:49:27 327

原创 51Nod 1080 两个数的平方和

题目链接这题刚开始想着直接暴力就好了。看了下数据没做然后转成预处理所有的平方数。如果用数组的话不容易查找,用hash超空间所有用了set容器。判断sqrt(n-i*i)是否存在,存在就输出#include#include#include#include#include#include#include#includeusing namespace std;int m

2017-09-12 20:23:25 234

原创 51Nod 1004 n^n的末位数字(快速幂)

题目链接直接对最后一位进行N次运算,然后用快速幂就好#include#include#include#include#include#include#include#includeusing namespace std;int n;int f(int num){ int a=num; n--; while(n){ if(n&1) a=a*num%10; n

2017-09-12 20:10:08 260

原创 51Nod 1003 阶乘后面0的数量

题目链接这题第一想到的就是大数,根据前面学的知识,压位相乘,然后求0的个数就行超时:#include#include#include#include#include#include#include#includeusing namespace std;const long long mod=100000000;int main(){ int n; cin

2017-09-12 20:02:55 258

原创 HTML 基本元素

h1代表1标题h2代表2标题h3代表3标题h4代表4标题p代表段落代表强制换行-->p代表段落 标签进行定义的,在 href 属性中指定链接的地址-->百度 标签进行定义的,根据src可以锁定图片图片和html文件要放置在同一个文件夹下-->打开txt文档,修改后缀名为html,直接浏览器打开看看效果

2017-09-12 17:43:01 251

原创 51Nod 1242 斐波那契数列的第N项(矩阵快速幂)

题目链接大神博客里面提到最后一个式子展开所有经过n-1次幂之后,直接输出第一个元素即可矩阵快速幂和乘法快速幂大同小异#include#include#include#include#include#include#include#includeusing namespace std;const int mod=10000

2017-09-12 17:20:05 288

原创 51Nod 1459 迷宫游戏(Dijkstra)

题目链接Dijkstra求最短路径,最短路径需要更新,时间直接累加最短路径如果相同,比较时间#include#include#include#include#include#include#include#includeusing namespace std;typedef pair P;const int INF=1<<29;int time[1000]={0}

2017-09-12 16:33:24 222

原创 51Nod 2006 飞行员配对(二分图最大匹配) 匈牙利算法

题目链接1:第一个英国飞行员和他喜欢的第一个外国飞行员配对。配对成功对第二个飞行员配对2:如果第二个飞行员喜欢的第一个外国飞行员就是第一个飞行员配对的外国飞行员,然后对第一个英国飞行员改变配对的飞行员让他和喜欢的第二个飞行员配对,这样第二个英国飞行员就可以和自己第一个喜欢的外国飞行员在一起。如果第一个英国飞行员只有这个一个喜欢的飞行员那么第二个飞行员需要和第二个外国飞行员配

2017-09-10 16:54:19 477

原创 51Nod 1384 全排列(next-permutation)

题目链接#include#include#include#include#include#include#includeusing namespace std;int main(){ char s[11]; cin>>s; int a[20],len=strlen(s); for(int i=0;i<len;i++) a[i]=s[len-i-1]-'0';

2017-09-10 16:31:03 247

原创 51Nod 1240 莫比乌斯函数

题目链接#include#include#include#include#include#include#include#includeusing namespace std;int f(int n){ int p=sqrt(n); if(p*p==n) return 0; int k=0; int sum=0; for(int i=2;i<=p;i++){

2017-09-10 13:56:02 190

原创 51Nod 1212 无向图最小生成树

题目链接跟看长度排序,如果两个的father是同一个continue  否则添加#include#include#include#include#include#include#include#includeusing namespace std;typedef struct node{ int x,y,len;}node;node no[50001];int f

2017-09-10 13:29:11 214

原创 51Nod 1137 矩阵乘法

题目链接根据矩阵相乘定义写就行注意初始化数组为0#include#include#include#include#include#include#include#includeusing namespace std;int main(){ int n; cin>>n; int a[101][101]={0},b[101][101]={0},c[1

2017-09-08 17:51:47 162

原创 51Nod 1136 欧拉函数

题目链接不是很懂是啥意思。当成模板题吧http://www.cnblogs.com/shixinzei/p/7260474.html#include#include#include#include#include#include#include#includeusing namespace std;int main(){ int n,t; cin>>n

2017-09-08 17:38:32 179

原创 51Nod 1134 最长递增子序列(二分/lower_bound)

题目链接之前写过一个LIS问题传送门#include#include#include#include#include#include#includeusing namespace std;int main(){ int n; int a[50001]; cin>>n; for(int i=0;i<n;i++){ cin>>a[i]; } int

2017-09-06 17:50:57 334

原创 51Nod 1130 N的阶乘的长度 V2(斯特林近似)

题目链接之前做的斯特林近似。就不说了http://blog.csdn.net/qq_33193309/article/details/77803446#include#include#include#include#include#include#includeusing namespace std;double e=exp(1);int main(){ int

2017-09-06 17:44:28 606

原创 51Nod 1118 机器人走方格(dp/快速幂)

题目链接长知识了。。。(a+b)%mod=(a%mod+b%mod)%moda*b%mod=(a%mod*b%mod)%moda/b%mod =a*(b^(mod-2))%mod;然后开干。。第一种排列组合:这个在高中基本都做过的题目,从1,1到n,m一共朝下走n-1步,朝右走m-1步总共n+m-2,然后选一条路n-1或者m-1就是结果C(n

2017-09-06 17:31:36 268

原创 51Nod 1106 质数检测

题目链接#include#include#include#include#include#include#includeusing namespace std;int prime(int x){ if(x==2||x==3) return 1; int num=sqrt(x); for(int i=2;i<=num;i++) if(x%i==0) return 0

2017-09-06 16:45:32 212

原创 51Nod 1089 最长回文子串 V2(Manacher算法)

题目链接要注意的就是strlen(s1)需要提前算出来,因为个人习惯喜欢在循环中使用。。因为这个点超时一个下午没发现#include#include#include#include#include#include#includeusing namespace std;int a[50001];int n,k;int y;int main(){ char

2017-09-06 16:32:43 152

原创 51Nod 1081 子段求和(数组/树状数组)

题目链接数组:#include#include#include#include#include#includeusing namespace std;long long t[50001]={0};int n;void add(int x,long long v){ while(x<=n){ t[x]+=v; x+=x&-x; }}long long sum

2017-09-03 20:19:20 206

原创 51Nod 1001 数组中和等于K的数对 (二分)

题目链接n*n肯定超时。可以直接二分查找k-a[i]是否存在 我二分写错了。。。导致死循环,自己还一直不知道 心里还想着n*lgn也能超时(太水了太水了)#include#include#include#include#include#include#includeusing namespace std;int a[50001];int n,k;int y;i

2017-09-03 18:46:24 319

原创 51Nod 1085 背包问题(01)

题目链接#include#include#include#include#include#includeusing namespace std;int main(){ int n,w; cin>>n>>w; int we[1001],v[1001]; for(int i=0;i<n;i++){ cin>>we[i]>>v[i]; } int f[10001]={0

2017-09-03 12:44:09 192

原创 51Nod 1073 约瑟夫环

题目链接#include#include#include#include#include#includeusing namespace std;int main(){ int n,k; cin>>n>>k; int out=0; for(int i=2;i<=n;i++){ out=(out+k)%i; } cout<<++out; return 0;}

2017-09-03 12:17:57 297

原创 51Nod 1072 威佐夫游戏(黄金分割)

题目链接推荐博客:http://blog.csdn.net/theprinceofelf/article/details/7225206#include#include#include#include#includeusing namespace std;int main(){ int t; cin>>t; for(int i=0;i<t;i++){ int a,

2017-09-03 11:57:57 207

原创 51Nod 1069 Nim游戏

题目链接推荐一个博客:http://blog.csdn.net/theprinceofelf/article/details/7225206#include#include#include#include#includeusing namespace std;int main(){ int t; cin>>t; int out=0; for(int i=0;i<t;i+

2017-09-02 21:58:48 204

原创 51Nod 1066 Bash游戏

题目链接因为这个题跟我弟弟玩了20分钟的取石子游戏,就为了玩清里面是什么道理必胜的原理就是在取完石子之后,剩下的石子为(n+1)的整数倍,这样必赢因为最多只能去n个,不管对方取多少,我都能取到剩下(n+1)的整数倍个石子最后生n+1个石子的时候不管对面怎么取,我都能取完#include#include#include#include#includeusing

2017-09-02 20:58:31 359

超市管理系统的设计与实现(附数据库和论文)

主要是基于C#做的一个超市管理系统,有收银员登录,收钱、结账、VIP、进货、出货、交易明细等。主要是基于C#做的一个超市管理系统,有收银员登录,收钱、结账、VIP、进货、出货、交易明细等。

2017-07-09

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除