Find a way Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 8642    Accepted Submission(s): 2784 Problem Description Pass a year learning in Hangzhou, yifenfei arrival hometown Ningbo at finally.…
说实话,这题真第一次见,学到了不少有趣的东西,因吹丝汀!! 思路:因为不可能同时并行和相遇(我也不知道为啥,等我会证明了就来说说) 所以正向建边再反向建边,拓扑排序+dp求最下长路,记录下最大的就是解 高中生的OI题好难呀 #include<iostream> #include<vector> #include<cstring> #include<cstdio> #include<queue> #include<algorithm>…
Computer Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 4440    Accepted Submission(s): 2236 Problem Description A school bought the first computer some time ago(so this computer's id is 1). Du…
int find_char(char **strings, char ch) { char *string; while ((string = *strings++) != NULL) { while (*string != '\0') { if (*string++ == ch) { return TRUE; } } } return FALSE; } 无副作用版本,适合多次查找. int find_char(char **string, char ch) { while (*string !…
近日 Google 在官方的 Apps Updates 博客公布了全新的两步验证功能--Google 提示,新的功能通过与 Google App 联动,进一步将验证确认工作缩减到仅有两步,同时支持 Android 和 iOS 平台. 想要开启 Google 提示的用户可以通过: 我的账户--登陆 Google--两步验证 找到该功能的开启选项. 开启 Google 提示功能,出于安全考虑必须有一台拥有屏幕锁定的设备,开启过程中需要用户在手机端 Google App 的提醒界面上点击确认按钮,有开…
项目环境是php5.3.28 项目用的ThinkPHP3.2.3  已经mysql5.5数据库,要和另一个项目对接,需要连接sqlsever2000数据库进行一些操作. 第一种用php自带扩展连接数据库:1.首先要下载 php_pdo_sqlsrv_53_ts_vc9.dll php_sqlsrv_53_ts_vc9.dll 下载地址:http://share.weiyun.com/dc589fc41567ce6e3fb8b131ec1553ff 这两个文件 2.复制到PHP目录下的ext目录下…
http://ac.jobdu.com/problem.php?pid=1509 此题最直观的方法是两次DFS,分别找到这两个节点的path,然后遍历path1和path2做比较,找到最后一个共同的元素.这个普通的做法在:http://blog.csdn.net/thyftguhfyguj/article/details/9232901 但有个更好的办法能够一次DFS中找到,没有O(logN)的额外空间.参见:http://www.cnblogs.com/lyunyu/archive/2013/…
本文参考自<剑指offer>一书,代码采用Java语言. 更多:<剑指Offer>Java实现合集   题目 输入两个链表,找出它们的第一个公共结点. 思路 蛮力法:遍历第一个链表的结点,每到一个结点,就在第二个链表上遍历每个结点,判断是否相等.时间复杂度为O(m*n),效率低: 使用栈:由于公共结点出现在尾部,所以用两个栈分别放入两个链表中的结点,从尾结点开始出栈比较.时间复杂度O(m+n),空间复杂度O(m+n). 利用长度关系:计算两个链表的长度之差,长链表先走相差的步数,之…
<题目链接> 题目大意: 两个熊孩子在n*m的平地上放火玩,#表示草,两个熊孩子分别选一个#格子点火,火可以向上向下向左向右在有草的格子蔓延,点火的地方时间为0,蔓延至下一格的时间依次加一.求烧完所有的草需要的最少时间.如不能烧完输出-1. 解题分析: 暴力枚举两个起点,然后用BFS求出这两个火源能够蔓延到最远的草地所花的时间,在那些能够烧完所有草地的情况中,选择用时最少的. #include <iostream> #include <cstring> #include…
题意,10*10的地图,有若干块草地“#”,草地可以点燃,并在一秒后点燃相邻的草地.有墙壁‘·‘阻挡.初始可以从任意两点点火.问烧完最短的时间.若烧不完输出-1. 题解:由于100的数据量,直接暴力.枚举两个起点,推入队列,然后bfs.烧完就返回深度,更新一个min值. 坑:(帮同学照bug) return t.step+1;bfs后没有算上最后一步 ac代码 #define _CRT_SECURE_NO_WARNINGS #include <iostream> #include <cs…