- 浏览: 155492 次
- 性别:
- 来自: 内蒙古
最新评论
-
linest:
ethi_teye 写道id可能是0开头的,你用int保存再输 ...
pat-1022 Digital Library -
ethi_teye:
id可能是0开头的,你用int保存再输出,这些0就被忽略了。
pat-1022 Digital Library -
lixuanchong:
在lz的代码上稍作修改即可:
#include<iost ...
pat-1010* Radix -
air_sky:
确实。。result=a0*base^0+a1*base^1+ ...
pat-1010* Radix -
linest:
air_sky 写道
关于“方程只有一个正整数解,就可以用二分 ...
pat-1010* Radix
文章列表
读代码-KMeansDriver
- 博客分类:
- mahout
package org.apache.mahout.clustering.kmeans;
public class KMeansDriver extends AbstractJob
kmeans的入口KMeansDriver类
run函数中buildClusters,clusterData
Path clustersOut = buildClusters(conf, input, clustersIn, output, measure, maxIterations, delta, runSequential);
if (runClustering) {
...
package org.apache.mahout.text;目的:目录下文本文件转成sequence格式
main函数入口SequenceFilesFromDirectory类
三个基本项,fs writer 和 filter
FileSystem fs = FileSystem.get(conf);
ChunkedWriter writer = new ChunkedWriter(conf, Integer.parseInt(options.get(CHUNK_SIZE_OPTION[0])), output);
SequenceFilesFromDirectory ...
读代码-InputMapper
- 博客分类:
- mahout
package org.apache.mahout.clustering.conversion;
目的:读取输入转换成vector输出
private static final Pattern SPACE = Pattern.compile(" ");
private Constructor<?> constructor;
用反射加载vector类
Configuration conf = context.getConfiguration();
String vectorImplClassName = conf.get("vector ...
最近用在windows下编写的python脚本进行linux下hive streaming时会报错。
文件格式导致诡异错误。
在vi下 set ff? 看是否显示为dos
如果是dos说明是windows环境下的
执行set ff=unix 修改
不用加减运算符实现输入x输出x-1
利用两次溢出,溢出后为0跳出循环。
int f(int x)
{
int tmp = 1;
int res = 0;
for(int i=x; i ; ++i)
tmp++;
for(int i = tmp; i ; ++i)
res++;
return res;
}
int main(void)
{
cout<<f(6)<<endl;
}
利用here document
:表示空语句,这样就实现了多行注释
:<<BLOCK
....注释内容
BLOCK
$du -sh /home/linest/* | sort -rn
272M /home/linest/mahout
145M /home/linest/mrs_std
96K /home/linest/all_auction_category.txt
60K /home/linest/hive_log
48M /home/linest/tools
40K /home/linest/cluster_result.txt
32K /home/linest/hive-config-old
20K /home/linest/hive-conf ...
用sizeof时,作为参数传递的数组退化成指针,结果是4.
非参数时结果是100.
int getSize(char a[100])
{
return sizeof(a);
}
int main(void)
{
char ch[100];
cout<<sizeof(ch)<<endl;
cout<<getSize(ch)<<endl;
}
用数组的引用可以解决退化问题,但维数必须指定,这样一来维数定死,也不太好用
int getSize(char (&a)[100])
{
return ...
参考了网上资料总结一下
1.extern 只是声明,并不是定义,没有分配内存空间。
2.标有 extern 是告诉编译器被修饰的可以在本模块或外部模块使用,相反 static 只能本模块使用
3.extern C 结果:实现C++与C及其它语言的混合编程。
4.extern C 原因:C++有重载的概念,采用了mangled name的机制,给每一个重载版本生成不同名字,一般是函数名加上类型名。如void foo( int x, int y );可能在C下生成_foo,在C++下生成_foo_int_int
5.用法:
(1)在C++中引用C语言中的函数和变量,在C++包含C语言头文件时 ...
临时设置 export PATH=$PATH:路径
永久设置
对所有用户:
修改 /etc/profile 加入 export PATH="$PATH:路径"
对单个用户:
修改 ~/.bashrc 加入 export PATH="$PATH:路径"
修改文件后执行 source .bashrc 或重启即可生效
用echo $PATH可以检验
将数字转成指定进制,再反序,判断原数和新数是否都是质数。
注意质数判断时要有等号,如25的平方根5,注意0和1的特判。
本题中,进制转换和反序可以一次完成。
#include<iostream>
using namespace std;
#include<math.h>
bool isPrime(int n)
{
if(n==1||n==0)
return false;
for(int i=2;i<=sqrt((double)n);i++)
if(n%i==0)
return false;
return true; ...
06 复试 还是畅通工程
- 博客分类:
- acm
给出m个城镇,两两间距离,问最短路能全连通的路程。
最小生成树,基本并查集问题。贪心,总取最短的路尝试,如果两点不在一起则连通。
kruskal 算法。
#include<iostream>
using namespace std;
#include<vector>
#include<memory.h>
#include<algorithm>
struct Road
{
int start;
int end;
int dis;
};
bool compare(Road a,Road b)
{
retu ...
05 复试 畅通工程
- 博客分类:
- acm
给出m个城镇,n条路,问还需修几条路才能连通所有城镇。
基本并查集问题
#include<iostream>
using namespace std;
#include<memory.h>
int city[1001];
int find(int pos)
{
if(city[pos]==-1)
return pos;
return city[pos]=find(city[pos]);
}
int merge(int a,int b)
{
int roota=find(a);
int rootb=find(b);
...
06 复试 简单计算器
- 博客分类:
- acm
读入一个只包含 +, -, *, / 的非负整数计算表达式,计算该表达式的值。
样例输入
1 + 2
4 + 2 * 5 - 7 / 11
0
样例输出
3.00
13.36
思路:由于是非负数参与,将运算符转化成负数,便于存储处理。
先扫描一遍将所有乘除法解决,废弃的内容标记成一个负数。再扫描一遍运算加减法。
#include<iostream>
using namespace std;
#include<vector>
#include<stdio.h>
#include<map>
vector<double> ...
ZOJ-3168 字符串
- 博客分类:
- acm
3168:将给定的字符串排列为先Z再O再J再7,然后是剩余部分。
Sample Input
t7ZJ7OhO7B7O7irZtOhZdayJ77
Sample Output
ZZZOOOOJJ7777777thBirthday
思路:实际上没有排序,先统计,再过滤了一次。
#include<iostream>
using namespace std;
#include<string.h>
char str[1001];
int main()
{
int countZ;
int countO;
int countJ;
int ...