现在位置: 首页 > Hmonbnap发表的所有文章
  • 01月
  • 13日
综合 ⁄ 共 1224字 评论关闭
Description Input 只包含4个整数,它们彼此用空格隔开,分别为xp,yp,xs,ys。并且它们的都小于10000000。 Output 含一个整数,表示从点p到点s至少需要经过的马步移动次数。 Sample Input 1 2 7 9 Sample Output 5 题解 这道题的解题思路是大范围贪心,小范围暴力。个人觉得这个东西在一些暴力骗分中很有用。 #include<cstdio> #include<cstring> #include<cstdlib> #include<iostream> #include<cmath> #include<algorithm> #define mod 7005 using namespace std; int xs,ys,xt......
阅读全文
  • 01月
  • 11日
算法 ⁄ 共 2600字 评论关闭
这道题的题意为: 给你一个n*m的地图 这个地图中有三种格式  第一种 '*' 代表这个地方可以使用魔法跳转到另一个地方(后面告诉)。 第二种 ‘0’~‘9’ 代表这个地方可以得到的矿石数量。 第三种 ‘#’   代表这个地方是墙 不能通过。 然后再给你每一个'*'可以跳转到的地方 从左到右 从上到下 一次给出 起点为 左上角 每一个方格 可以向下或者向右走  然后让你求 这个地图中 最多能得到多少矿石(起点为左上角,终点任意)(魔法可以无限次用 但是 每个方格的矿石只能得到一次) 输出这个答案。 我的做法: spfa+缩点 缩点可以用tar......
阅读全文
  • 12月
  • 28日
综合 ⁄ 共 1597字 评论关闭
开始多写点算法,坚持每天写代码。 2012_3_19 1.求二个集合A、B交集的补集:以整型集合为例。 #include <set> using namespace std; set<int> GeSet(set<int> A, set<int> B) { set<int> C(A); pair<set<int>::iterator , bool> result;//注意pair的用法 for(set<int>::iterator it = B.begin(); it != B.end(); it++) { result = C.insert(*it);//insert 里面不是it而是*it //insert返回值是一个迭代器和bool的pair。 if(!result.second) { C.erase(result......
阅读全文
  • 12月
  • 19日
综合 ⁄ 共 2401字 评论关闭
create or replace trigger singleFactorMethodtest --after insert or update after insert on hm_v2_test for each row declare cd_standard hm_standard.cd_standard%type; hg_standard hm_standard.hg_standard%type; dp_as_standard hm_standard.dp_as_standard%type; cu_standard hm_standard.cu_standard%type; pb_standard hm_standard.pb_standard%type; cr_standard hm_standard.cr_standard%type; zn_standard hm_standard.zn_standard%type; ni_standard hm_standard.ni_standard%type; begin SELECT cd_standard INTO......
阅读全文
  • 12月
  • 18日
综合 ⁄ 共 267字 评论关闭
        1,是先开发界面还是后台业务逻辑?         我的个人习惯是喜欢先开发界面。但是这个办法是最好的吗?如果是分开工作,我负责开发业务逻辑的时候我又应该怎么办?         2,如何设计界面?         在开发博客的初始阶段,我想了一天一夜,但是最后什么也没有想出来...唉,没有艺术细胞的我们,还是直接模仿他人的界面先吧...         3,如何重构?         重构?包括什么?我的个人习惯是很懒的,基本上很少真正动手去重构一个项目,大部分都是直接想象中的重构!如果真的去重构,我应该从哪几个方面去重构呢?   
阅读全文
  • 12月
  • 13日
综合 ⁄ 共 1159字 评论关闭
Problem Description 有一种纸牌游戏,很有意思,给你N张纸牌,一字排开,纸牌有正反两面,开始的纸牌可能是一种乱的状态(有些朝正,有些朝反),现在你需要整理这些纸牌。但是麻烦的是,每当你翻一张纸牌(由正翻到反,或者有反翻到正)时,他左右两张纸牌(最左边和最右边的纸牌,只会影响附近一张)也必须跟着翻动,现在给你一个乱的状态,问你能否把他们整理好,使得每张纸牌都正面朝上,如果可以,最少需要多少次操作。 Input 有多个case,每个case输入一行01符号串(长度不超过20),1表示反面朝上,0表示正面朝上。 Ou......
阅读全文
  • 12月
  • 09日
综合 ⁄ 共 2959字 评论关闭
转自:http://doc.linuxpk.com/39915.html 2004年4月20日最新版本的GCC编译器3.4.0发布了。目前,GCC可以用来编译C/C++、FORTRAN、JAVA、OBJC、ADA等语言 的程序,可根据需要选择安装支持的语言。GCC 3.4.0比以前版本更好地支持了C++标准。本文以在Redhat Linux上安装GCC3.4.0为例,介绍了GCC的安装过程。   安装之前,系统中必须要有cc或者gcc等编译器,并且是可用的, 或者用环境变量CC指定系统上的编译器。如果系统上没有编译器,不能安装源代码形式的GCC 3.4.0。如果是这种情况,可以在网上找一个与你系统相适应的如RPM等二......
阅读全文
  • 11月
  • 09日
综合 ⁄ 共 1339字 评论关闭
最近在准备并发基础的PPT,想到了一些知识点,记录下来以后也可以做个参考。大部分的知识点在之前的博客中都多少涉及到了 这里的并发基础指的是单机多处理器的情况下的一些并发问题,不涉及到分布式环境下的并发问题。 并发基础主要解决的是可见性,有序性和原子性的问题,让不可控的进程/线程变得可以预测,可以控制行为。 Java解决可见性/有序性的主要技术是通过Java内存模型来解决的。Java内存模型这个域里面有这些知识点 1. 可见性问题的根源 -- CPU写操作的延迟 2. 造成写操作延迟的原因主要是高速缓存的存在,理解缓存的原......
阅读全文
  • 10月
  • 25日
综合 ⁄ 共 9715字 评论关闭
在《OpenCV 2 Computer Vision Application Programming Cookbook》看到的例子,非常不错,算是对之前的文章<访问Mat图像中每个像素的值>的回顾和补充。 Color Reduce 还是使用经典的Reduce Color的例子,即对图像中的像素表达进行量化。如常见的RGB24图像有256×256×256中颜色,通过Reduce Color将每个通道的像素减少8倍至256/8=32种,则图像只有32×32×32种颜色。假设量化减少的倍数是N,则代码实现时就是简单的value/N*N,通常我们会再加上N/2以得到相邻的N的倍数的中间值,最后图像被量化为(256/N)×(256/N)×(256/N)种......
阅读全文
StrictMode方法需要在主页面的onCreate方法里加上如下代码: StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder() //构造StrictMode .detectDiskReads() //当发生磁盘读操作时输出 .detectDiskWrites()//当发生磁盘写操作时输出 .detectNetwork() //访问网络时输出,这里可以替换为detectAll() 就包括了磁盘读写和网络I/O .penaltyLog() //以日志的方式输出 .build()); StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder() .dete......
阅读全文
  • 10月
  • 15日
综合 ⁄ 共 2523字 评论关闭
传送门:【codeforces】480E Parking Lot 题目分析:很早以前在同学助攻下写出来的,想想还是放出来好了,是个不错的思想。 原题是在动态将可行区域变成不可行区域的同时求全局最大子正方形,n,m,k至多2000。 既然只有加点,于是我们离线,倒着来,这样便只有删点。 我们给每个节点(i,j)保存它向上能延伸的距离U[i][j]以及向下能延伸的距离D[i][j]。 易知删除一个点最多影响一列上的U和D,暴力更新U,D。复杂度为O(n^2),可以承受。 首先我们预处理出所有点都加上后的最大子正方形(直接dp)。 然后建立一棵线段树,线段......
阅读全文
  • 04月
  • 18日
综合 ⁄ 共 454字 评论关闭
传送门:http://www.lydsy.com/JudgeOnline/problem.php?id=1334 一开始直接贪心,0msWA…… 其实这是个背包……太水了直接看代码吧 Code: #include<bits/stdc++.h> using namespace std; const int maxn=333; int n,ans; int w[maxn],sum,f[100010]; int main(){ cin>>n; for(int i=1;i<=n;i++)cin>>w[i],sum+=w[i]; int m=sum/2; sort(w+1,w+1+n,greater<int>()); for(int i=1;i<=n;i++)for(int j=sum;j>=w[i];j--) if((f[j-w[i]]<=m&&f[j-w[i]]+w[i]>m)||f[j-w[i]]+w[i]<=m)......
阅读全文