<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[fire__ice的专栏]]></title><description><![CDATA[初级Acmer]]></description><link>https://blog.youkuaiyun.com/fire__ice</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; fire__ice]]></copyright><item><title><![CDATA[python编译成pyc]]></title><link>https://blog.youkuaiyun.com/fire__ice/article/details/52945709</link><guid>https://blog.youkuaiyun.com/fire__ice/article/details/52945709</guid><author>fire__ice</author><pubDate>Thu, 27 Oct 2016 14:53:45 +0800</pubDate><description><![CDATA[python下编译py成pyc和pyo




其实很简单，
用
python -m py_compile file.py
python -m py_compile /root/src/{file1,file2}.py
编译成pyc文件。
也可以写份脚本来做这事：
Code:





import py_compile 
py_compile.compile(]]></description><category></category></item><item><title><![CDATA[shc对shell脚本加密]]></title><link>https://blog.youkuaiyun.com/fire__ice/article/details/52945473</link><guid>https://blog.youkuaiyun.com/fire__ice/article/details/52945473</guid><author>fire__ice</author><pubDate>Thu, 27 Oct 2016 14:31:00 +0800</pubDate><description><![CDATA[之前为了防止svn认证问题，都是直接把svn的用户名、密码写在脚本里面的。由于明文密码非常不安全，所以必须采取密文保存。
为了不影响原有脚本流程，采用了抽取svn命令为独立脚本，在这个脚本里面写上用户名和密码，并加密保存。

加密采用了shc这个工具进行。该工具采用arc4的方式加密数据，而且比较简单，运行之后会根据输入的脚本(svn.sh)生成两个文件：
svn.sh.x这个是加密后的可]]></description><category></category></item><item><title><![CDATA[Python+Hadoop Streaming实现MapReduce（如何给map和reduce的脚本传递参数）]]></title><link>https://blog.youkuaiyun.com/fire__ice/article/details/50298953</link><guid>https://blog.youkuaiyun.com/fire__ice/article/details/50298953</guid><author>fire__ice</author><pubDate>Mon, 14 Dec 2015 18:33:32 +0800</pubDate><description><![CDATA[设置参数

#!/bin/bash

hadoop fs -rmr trans_record/result

hadoop jar ./hadoop-streaming-2.0.0-mr1-cdh4.7.0.jar \
        -input $1 \
        -output trans_record/result \
        -file map.py \
       ]]></description><category></category></item><item><title><![CDATA[MYSQL HOST IS NOT ALLOWED]]></title><link>https://blog.youkuaiyun.com/fire__ice/article/details/9704205</link><guid>https://blog.youkuaiyun.com/fire__ice/article/details/9704205</guid><author>fire__ice</author><pubDate>Thu, 01 Aug 2013 16:04:16 +0800</pubDate><description><![CDATA[解决mysql数据库远程连接出错ERROR 1130: Host '' is not allowed to connect to this MySQL server
  
解决方法：基本上第一条就能搞定。
 
1。 改表法。
可能是你的帐号不允许从远程登陆，只能在localhost。这个时候只要在localhost的那台电脑，登入mysql后，更改 "mysql" 数据库里的 "user]]></description><category></category></item><item><title><![CDATA[HDU4419 Colourful Rectangle(矩形面积并+线段树)]]></title><link>https://blog.youkuaiyun.com/fire__ice/article/details/8779426</link><guid>https://blog.youkuaiyun.com/fire__ice/article/details/8779426</guid><author>fire__ice</author><pubDate>Tue, 09 Apr 2013 20:17:55 +0800</pubDate><description><![CDATA[题目链接：http://acm.hdu.edu.cn/showproblem.php?pid=4419
解析：跟一般矩形面积并有一点的区别，就是每条线的状态要用一个数组来维护，这里的depth[ i ] 表示当前状态第i中颜色的已覆盖的长度，三种基本颜色可以分别用1，2，4表示，然后通过二进制运算得到其他颜色的标号，其他也没什么了。
参考代码：
#include
#include
#incl]]></description><category></category></item><item><title><![CDATA[HDU1542 Atlantis（扫描线+矩形面积并+线段树）]]></title><link>https://blog.youkuaiyun.com/fire__ice/article/details/8761302</link><guid>https://blog.youkuaiyun.com/fire__ice/article/details/8761302</guid><author>fire__ice</author><pubDate>Fri, 05 Apr 2013 14:46:29 +0800</pubDate><description><![CDATA[题目链接：http://acm.hdu.edu.cn/showproblem.php?pid=1542
题意：给出一些矩形，求面积并。


从左到右扫描，纵坐标排序后，按数组下标建树，插入纵线段端点再映射到原数，别的就没什么了。
参考代码：
#include
#include
#include
#include
#include
#include
using namespace std]]></description><category></category></item><item><title><![CDATA[hdu1828 Picture(扫描线+矩形周长并+线段树）]]></title><link>https://blog.youkuaiyun.com/fire__ice/article/details/8760552</link><guid>https://blog.youkuaiyun.com/fire__ice/article/details/8760552</guid><author>fire__ice</author><pubDate>Fri, 05 Apr 2013 10:06:15 +0800</pubDate><description><![CDATA[题目链接：http://acm.hdu.edu.cn/showproblem.php?pid=1828
题意：给出一些矩形，求并后的周长。
哈希后，扫描即可。第一道扫描线的题目，尽管是裸题，还是可开心~~
参考代码：

#include
#include
#include
#include
using namespace std;

#define clr(arr,val) memset]]></description><category></category></item><item><title><![CDATA[2013腾讯编程马拉松初赛第一场（3月21日）小明系列故事——师兄帮帮忙]]></title><link>https://blog.youkuaiyun.com/fire__ice/article/details/8708976</link><guid>https://blog.youkuaiyun.com/fire__ice/article/details/8708976</guid><author>fire__ice</author><pubDate>Sat, 23 Mar 2013 09:47:45 +0800</pubDate><description><![CDATA[#include
using namespace std;

#define LL long long
const int mod = 1000000007;

LL data[10005];
LL binary_power(int t,LL k){
    if(t == 0) return 1;
    if(t == 1) return k;
    LL r = binary_power(]]></description><category></category></item><item><title><![CDATA[2013腾讯编程马拉松初赛第一场（3月21日）小Q系列故事——电梯里的爱情]]></title><link>https://blog.youkuaiyun.com/fire__ice/article/details/8708948</link><guid>https://blog.youkuaiyun.com/fire__ice/article/details/8708948</guid><author>fire__ice</author><pubDate>Sat, 23 Mar 2013 09:35:53 +0800</pubDate><description><![CDATA[题目链接：http://acm.hdu.edu.cn/showproblem.php?pid=4505
水题~~
#include
using namespace std;

bool flag[105];
int main(){
	int n,m,v;
	cin>>n;
	while(n--){
		memset(flag,false,sizeof(flag));
		int sum = 0]]></description><category></category></item><item><title><![CDATA[2013腾讯编程马拉松初赛第一场（3月21日）湫湫系列故事——减肥记I]]></title><link>https://blog.youkuaiyun.com/fire__ice/article/details/8708913</link><guid>https://blog.youkuaiyun.com/fire__ice/article/details/8708913</guid><author>fire__ice</author><pubDate>Sat, 23 Mar 2013 09:25:29 +0800</pubDate><description><![CDATA[题目链接：http://acm.hdu.edu.cn/showproblem.php?pid=4508
水完全背包~~

#include
#include
using namespace std;

int A[105],B[105];
int dp[100005];
int main(){
	int n,a,b,m;
	while(cin>>n){
		memset(dp,0,sizeo]]></description><category></category></item><item><title><![CDATA[2013腾讯编程马拉松初赛第一场（3月21日）湫湫系列故事——减肥记II]]></title><link>https://blog.youkuaiyun.com/fire__ice/article/details/8708898</link><guid>https://blog.youkuaiyun.com/fire__ice/article/details/8708898</guid><author>fire__ice</author><pubDate>Sat, 23 Mar 2013 09:17:00 +0800</pubDate><description><![CDATA[题目链接：http://acm.hdu.edu.cn/showproblem.php?pid=2013
水~~
#include
#include
#include
using namespace std;

const int total_time = 24 * 60;
struct Node{
	int L,R;
}data[500005];

bool cmp(Node a,Node b]]></description><category></category></item><item><title><![CDATA[poj 1330 Nearest Common Ancestors(LCA)]]></title><link>https://blog.youkuaiyun.com/fire__ice/article/details/8105564</link><guid>https://blog.youkuaiyun.com/fire__ice/article/details/8105564</guid><author>fire__ice</author><pubDate>Wed, 24 Oct 2012 10:06:35 +0800</pubDate><description><![CDATA[题目链接：http://poj.org/problem?id=1330
题意：给出一颗树，最后寻问两个点的最近公共祖先。
可以用LCA来解决，没什么问题。
#include
#include
#include
#include
using namespace std;

#define clr(a,b) memset(a,b,sizeof(a))
const int M = 10005;]]></description><category></category></item><item><title><![CDATA[poj 3207 Ikki's Story IV - Panda's Trick(2-sat)]]></title><link>https://blog.youkuaiyun.com/fire__ice/article/details/8104321</link><guid>https://blog.youkuaiyun.com/fire__ice/article/details/8104321</guid><author>fire__ice</author><pubDate>Tue, 23 Oct 2012 20:11:22 +0800</pubDate><description><![CDATA[题目链接：http://poj.org/problem?id=3207
题意：在圆上有n个点，编号为0到n-1，按顺序排列，现在要在连m条线，线必须完全在圆的内部或外部，所有的线不能相交，问是否存在连的方法。
解析：每条线只有两种状态，在内部或外部，即0或1，可以用2-sat来搞，在圆上有交叉的两条线为矛盾条件。
参考代码：

#include
#include
#include
#in]]></description><category></category></item><item><title><![CDATA[poj 4001 Xiangqi]]></title><link>https://blog.youkuaiyun.com/fire__ice/article/details/8103082</link><guid>https://blog.youkuaiyun.com/fire__ice/article/details/8103082</guid><author>fire__ice</author><pubDate>Tue, 23 Oct 2012 15:20:40 +0800</pubDate><description><![CDATA[题目链接：http://poj.org/problem?id=4001
题意：给出象棋的一个状态，判断是否是死棋。


模拟题。。。
开始用scanf()，WA了，改成cin就对了，输入格式不对。
#include
#include
#include
#include
#include
using namespace std;

#define clr(a,b) memset(a,b,]]></description><category></category></item><item><title><![CDATA[The 2012 ACM-ICPC Asia Changchun Regional Contest(problem B)]]></title><link>https://blog.youkuaiyun.com/fire__ice/article/details/8090906</link><guid>https://blog.youkuaiyun.com/fire__ice/article/details/8090906</guid><author>fire__ice</author><pubDate>Fri, 19 Oct 2012 18:06:55 +0800</pubDate><description><![CDATA[zoj题目链接：http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=4879
题意：

已知b数组，问是否 存在a数组满足b数组的要求。
解析：枚举a[i]的每一个二进制位，只有两种情况0或1，因为各个位是相对独立的，所以可以分开考虑31位，每一个是否存在解可以用2-sat来解决。之前也不知2-sat，推荐看看算法合集之《由]]></description><category></category></item><item><title><![CDATA[The 2012 ACM-ICPC Asia Changchun Regional Contest（problem E)]]></title><link>https://blog.youkuaiyun.com/fire__ice/article/details/8081644</link><guid>https://blog.youkuaiyun.com/fire__ice/article/details/8081644</guid><author>fire__ice</author><pubDate>Wed, 17 Oct 2012 15:38:08 +0800</pubDate><description><![CDATA[zoj题目链接：http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3659
题意：有n个点，n-1条边，边上有权值，现要找出一个点s，使得这个点到所有点的距离和最大，距离的定义是路径上最小的权值。
可以用并查集来搞，把边按权值从大到小排序，因为这条边两边的点不在一个集合，考虑s在两边任一边的情况，确定s点在一边的话，那s到]]></description><category></category></item><item><title><![CDATA[poj 1470 Closest Common Ancestors(LCA)]]></title><link>https://blog.youkuaiyun.com/fire__ice/article/details/8043452</link><guid>https://blog.youkuaiyun.com/fire__ice/article/details/8043452</guid><author>fire__ice</author><pubDate>Sat, 06 Oct 2012 16:50:42 +0800</pubDate><description><![CDATA[题目链接：http://poj.org/problem?id=1470


题意：LCA
方法：Tarjin 或 RMQ
裸题，不解释，就是输入有点麻烦。。。

#include
#include
#include
#include
using namespace std;

#define clr(arr,v) memset(arr,v,sizeof(arr))
const int]]></description><category></category></item><item><title><![CDATA[最大流模版]]></title><link>https://blog.youkuaiyun.com/fire__ice/article/details/8036246</link><guid>https://blog.youkuaiyun.com/fire__ice/article/details/8036246</guid><author>fire__ice</author><pubDate>Tue, 02 Oct 2012 10:19:09 +0800</pubDate><description><![CDATA[const int inf = 0xfffffff;
#define clr(arr,v) memset(arr,v,sizeof(arr))

template
class MaxFlow{
public:
	int GetMaxFlow(int s,int t,int n)  //n表示有n个点，s为源点，t为汇点
	{
		int maxflow = 0,minflow = inf,cur]]></description><category></category></item><item><title><![CDATA[hdu 4417 Super Mario(哈希表+树状树组）]]></title><link>https://blog.youkuaiyun.com/fire__ice/article/details/8035585</link><guid>https://blog.youkuaiyun.com/fire__ice/article/details/8035585</guid><author>fire__ice</author><pubDate>Mon, 01 Oct 2012 20:57:45 +0800</pubDate><description><![CDATA[题目链接：http://acm.hdu.edu.cn/showproblem.php?pid=4417


题意：给出一个长度为n的数列，询问m次，L到R之间不大于H的数的个数。
解析：暴力是没戏，考虑的时候我们希望得到这样的数据，array[i]表示i个元素之前小于H的元素个数（对任意H），这样每次询问结果就是array[R]-array[L]，用求逆序数的思想，利用树状数组可以求出在第]]></description><category></category></item><item><title><![CDATA[hdu3015 Disharmony Trees(树状数组）]]></title><link>https://blog.youkuaiyun.com/fire__ice/article/details/8034302</link><guid>https://blog.youkuaiyun.com/fire__ice/article/details/8034302</guid><author>fire__ice</author><pubDate>Sun, 30 Sep 2012 17:38:21 +0800</pubDate><description><![CDATA[题目链接：http://acm.hdu.edu.cn/showproblem.php?pid=3015
题意：在路边有一行树，给出它们的坐标和高度，先按X坐标排序。记录排名，记为rankx，再按它们的高度排序，记录排名，记为rankh。
两颗树i,j的差异度为fabs(rankx[i]-rankx[j])*min(rankh[i],rankh[j]),最后求出任异两颗树差异度的和。（注意：有并]]></description><category></category></item></channel></rss>