- 博客(36)
- 收藏
- 关注
原创 Java中加载图片方法
/** * 加载一张图片 * @param path 图片的路径,如"images/cover.jpg" * @return 加载的图片 */ public static Image getImage(String path){ URL u= GameUtils.class.getClassLoader().getResource(path); //生成URL Buffe
2015-08-25 23:18:59 1328
原创 delphi中adoquery控件parameters的sql查询示例
q1.Close; q1.SQL.Text :='select * from haha where id= :id'; q1.Parameters.ParamByName('id').DataType := ftInteger; q1.Parameters.ParamByName('id').Value :=n; q1.Open;
2015-07-04 09:04:19 2426
原创 中国剩余定理(模板)
int crt(int a[],int m[],int n){ int M=1,ret=0,tm; for(int i=0;i<n;i++) M*=m[i]; for(int i=0;i<n;i++) { int x,y; tm=M/m[i]; extend_gcd(tm,m[i],x,y);
2015-04-09 23:12:55 381
原创 扩展欧几里得算法(模板)
int extend_gcd(int a,int b,int &x,int &y){ if(b==0) { x=1;y=0; return a; } else { int r; r=extend_gcd(b,a%b,y,x); y-=x*(a/b); retur
2015-04-09 23:11:18 424
转载 从《编程之美》买票找零问题说起,娓娓道来卡特兰数——兼爬坑指南
引子: 大约两个月前,我在练习一些招聘的笔试题中,有一道和卡特兰数相关。那时还没来得及开始仔细看《编程之美》,就先翻到那一章节,草草地看了下买票找零的例子和证明并把书上的背下来了事。当然,只靠这个式子是可以解决一些问题的,但不知是《编程之美》的作者有意挖的陷阱来甄别所谓的“Poser”,还是疏忽了没有进一步讨论,又或者是因限于篇幅而将更本质的东西留给感兴趣的读者来挖掘,对于能用一般卡特兰数解
2015-04-06 15:31:15 550
转载 stl::priority_queue的用法及其成员函数
priority_queue函数列表函数描述 by MoreWindows( http://blog.csdn.net/MoreWindows )构造析构priority_queue c 创建一个空的queue 。注:priority_queue构造函数有7个版本,请查阅MSDN数据访问与增减
2015-03-29 11:20:28 2014
原创 poj3264 Balanced Lineup(线段树)
线段树水题,没什么好说的!#include #include #include #include using namespace std;int n,q,tree[250000],tree2[250000];void add(int l,int r,int k,int b,int e,int value){ if(l==b&&r==e) { tr
2015-03-11 21:39:20 319
原创 poj3109 Inner Vertices(树状数组)
题目大意:一个无限大的棋盘上有无数个点,这些点有黑有白,下面进行一步操作,如果有一个点,上下左右各有点,则将这个点涂成黑色。最后计算这个棋盘上黑点的数量。思路:这题算是我做得比较满意的一道题,也是在没有借助外界帮助的情况下,比我预期的更短的时间内A了出来(虽然贡献了两次WA)。第一步,坐标离散化!首先,这题的棋盘的坐标的绝对值能够达到10^9这个数量级,然而点的数量却只有10^5个
2015-03-10 23:03:16 1426 1
原创 poj3977 Subset(折半枚举)
题目大意:给定N个整数组成的数列(N思路:如果单纯的枚举的话,这N个数分别有选和不选两种,所以一共有2^35个子集。很明显,会超时,但是我们可以将这个整数数列分成两半,可得每边最多18个,如果分别进行枚举的话,复杂度可以降到O((N/2)²),即最多2^18,在可接受范围内。然后枚举其中一个子集,二分查找与他组成绝对值最小的子集。在这里我们使用了stl::map这个类库,里面封装了红黑
2015-03-09 11:39:52 1977
原创 poj2549 Sumsets(折半枚举)
题目大意:给定一个整数数列,从中选出一个四个不同的元素a,b,c,d组成一个新的集合,使得a+b+c=d,求得满足条件的最大的d,否则输出no solution。解决方法:这一题如果使用传统的枚举方法,时间复杂度在C(3,n),肯定超时。所以要使用折半枚举,这题折半枚举和其他题不同的是,以前都是将数据折半进行枚举,而这题要对公式进行变形,变形成a+b=d-c,这样两边的枚举的时间复杂度
2015-03-09 11:26:07 560
转载 stl::map类常用成员函数
Map是c++的一个标准容器,她提供了很好一对一的关系,在一些程序中建立一个map可以起到事半功倍的效果,总结了一些map基本简单实用的操作!1. map最基本的构造函数; mapmapstring; mapmapint; mapmapstring; mapmapchar; mapmapchar; mapmapint
2015-03-08 16:50:33 574
原创 Android::ExpandableListView二级列表控件的使用
1.在图形界面创建二级列表控件,此控件名为ExpandableList,在Comosite子选单下。 <ExpandableListView android:id="@+id/expandableListView1" android:layout_width="match_parent" android:layout_height="wra
2015-01-23 20:53:49 889
原创 Android::SeekBar控件的使用
1.在界面中拖入seekbar控件 <SeekBar android:id="@+id/seekBar1" android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_alignParentLeft="true"
2015-01-23 18:22:30 492
原创 Android::RatingBar控件的使用
1.在图形界面中加入RatingBar控件,其中numStars代表最大星数,stepsize代表步长。 <RatingBar android:id="@+id/ratingBar1" android:layout_width="wrap_content" android:layout_height="wrap_content"
2015-01-23 18:11:36 389
原创 Android下拉菜单Spinner控件
方法1(非动态创建):Spinner创建:1.在布局栏创建spinner控件。 <Spinner android:id="@+id/spinner1" android:layout_width="fill_parent" android:layout_height="wrap_content" androi
2015-01-22 20:57:43 564 1
原创 Adroid::TextView控件的使用
设置文本大小 px (pixels)像素 一般HVGA代表320x480像素,这个用的比较多。 dip或dp (device independent pixels)设备独立像素 这个和设备硬件有关,一般为了支持WVGA、HVGA和QVGA 推荐使用这个,不依赖像素。 sp (scale
2015-01-20 19:51:12 558 4
转载 android环境配置
转自:NIIT寒假体验班1.安装jdk2.检测当前jdk版本 开始-->运行 -->cmd-->java -version3.如果版本号小于1.6,配置jdk环境变量 右键 我的电脑 -->属性 -->高级 --> 环境变量 -->系统变量 -->path, 加上 jdk路径 ,例 C:\Program Files\Java\jdk1.6.0_10\bin;4.检测当前
2015-01-20 18:31:33 445
原创 poj2718 Smallest Difference
这一题,本来也挺简单的。只是用一个深度搜索做一个全排列,然后计算找出使两数差值最小的全排列。后来按照以前的方式写了一个全排列,交上去,告诉我TLE,这让在下很纠结啊。因为如果只是全排列的话,一共需要计算10!次,也就是说,不会超时。后来发现,自己以前写的算法有问题,在搜索的时候,会出现很多冗余的操作,使搜索的效率大大退化。后来更改了数据的处理方式,将算法复杂度降到了10!,然后提交,返回Accep
2015-01-14 19:35:54 488
原创 ubuntu下安装Java 1.8.0_25 jdk
首先需要从sun的官网上下载java SE Development Kit, 文件名为jdk-8u25... 在下发现是.gz文件,所以直接用下列命令解压 tar -zxvf jdk-8u25-linux-x64.gz 解压后得到jdk1.8.0_25文件夹,把文件夹移动到/usr/local里。输入代码如下: mv ./jdk1.8.0_25 /usr
2015-01-12 15:43:39 685
原创 D2D图片工厂类
#include #include #include #include #define SAFE_RELEASE(P) if(P){P->Release() ; P = NULL ;}ID2D1Factory* pD2DFactory ; // Direct2D factoryclass PictureFactory{protected: ID2D1HwndRenderT
2015-01-11 17:03:13 464
原创 windows GDI编程窗口模板
#include HWND hwnd;static TCHAR szAppName[]=TEXT("hellowin");HRESULT CALLBACK WndProc(HWND hwnd,UINT msg,WPARAM wparam,LPARAM lparam){ HDC hdc; PAINTSTRUCT ps; RECT rect; switch(msg) { case
2015-01-11 15:02:44 399
转载 解决MFC对话框类不能建立new class contain the remnants of that class
方法1:这是由于之前新建过同名的类,尽管删除了.h和.cpp(项目中和文件夹中),但是没有关闭文件浏览窗口。VC是先检测打开的文件窗口,然后检测项目中没打开的文件。 所以解决方法就是: 1、首先关闭所有打开的文件浏览窗口; 2、重新编译整个项目; 3、再新建同名类,就OK了。方法2:解决MFC对
2014-12-31 22:36:04 2422 2
原创 MFC杂记
菜单项的状态设置:在菜单项的建立类向导里面,选择UPDATE_COMMAND_UI,在函数里写入: pCmdUI->SetCheck(true); //true为按下,false为弹起对话框的显示:对话框对象.DoModal(); //模态对话框 CColorDLG dlg; dlg.DoModal(); 对话框对象.Create(IDD_DI
2014-12-31 20:36:25 421
转载 stl vector容器用法
介绍这篇文章的目的是为了介绍std::vector,如何恰当地使用它们的成员函数等操作。本文中还讨论了条件函数和函数指针在迭代算法中使用,如在remove_if()和for_each()中的使用。通过阅读这篇文章读者应该能够有效地使用vector容器,而且应该不会再去使用C类型的动态数组了。 Vector总览vector是C++标准模板库中的部分内容,它是一个多功能
2014-12-31 16:56:56 301
原创 MFC的常用绘图函数
绘制直线 HDC hdc; PAINTSTRUCT ps; CClientDC aDC(this); CPen pen(PS_SOLID,1,RGB(0,0,255)); aDC.SelectObject(&pen); aDC.MoveTo(m_ptOriginal); aDC.LineTo(point);绘制矩形
2014-12-30 11:27:16 659
转载 利用SecureCRT上传、下载文件(使用sz与rz命令)
首先,Linux端要下载lrzsz 借助securtCRT,使用linux命令sz可以很方便的将服务器上的文件下载到本地,使用rz命令则是把本地文件上传到服务器。 其中,对于sz和rz的理解与记忆我用了如下的方法(很多时候容易搞混): sz中的s意为send(发送),告诉客户端,我(服务器)要发送文件 send to cilent,就等同于客户端
2014-10-30 16:08:25 313
转载 ubuntu下安装Apache+PHP+Mysql
电影《社交网络》中,facebook创始人马克.扎克失恋后入侵哈佛大学宿舍楼服务器,窃取数据库资料,并在两个小时内完成了一个给校内女生评分的交互网站,该网站一天内点击数过10W,直接导致学校服务器崩溃。。。。。。其实,构建那样一个网站并不需要很多高深的技术,任何一个有一定网络编程基础的人都可以做到。马克构建网站所用的是Apache服务器和PHP服务器脚本语言,我曾经用三天时间学习PHP,然
2014-10-30 16:06:42 388
转载 Ubuntu下查看某个软件是否已经安装及其安装位置
默认情况下,rpm和二进制包的可执行文件安装到/usr/bin下,源码包的可执行文件安装到/usr/local/bin下。#display the location of the executable file(显示可执行文件的位置)which software_namewhereis software_name#显示和该软件有关的所有文件的位置locate software_
2014-10-30 14:37:03 2391
转载 中国地区的官方Ubuntu源
1、首先备份Ubuntu 11.10源列表sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup(备份下当前的源列表)2、修改更新源sudo gedit /etc/apt/sources.list#台湾源deb http://tw.archive.ubuntu.com/ubuntu/ precise main
2014-10-30 14:00:51 514
转载 Unable to locate package错误解决办法
新装了VMWare Player,结果装上Ubuntu12.04后安装软件都提示:Unable to locate package错误,解决方法非常简单,终端输入以下命令即可: sudoapt-get update
2014-10-30 12:56:04 931
原创 windows程序设计篇——插入位图
单刀直入,不废话了。 插入位图的一般步骤: ①首先在资源位插入位图,ID为IDB_BITMAP1,而且要在主程序中包含进新加入的头文件,即resource.h否则,编译器无法找到相应的位图资源。 剩下的这些都是在WM_PAINT这个环节中完成的: ②新建一个位图句柄:hBitMap=LoadBitMap(GetModule
2014-10-03 17:17:47 1038
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人