public String toString(ArrayList<Integer> result) {
		StringBuilder re = new StringBuilder();
		re.append(this.visitedPoint + "%" + level + "%");
		String key = "";
		key = this.cand.keySet().toString();
		re.append(cand.size());
		re.append(",");// cand size
		re.append(key.substring(1, key.length() - 1));// cand content
		re.append("%");
		key = this.excl.toString();
		re.append(this.excl.size());
		re.append(",");// notset size
		re.append(key.substring(1, key.length() - 1));// notset content
		if(level > 1){
			re.append("%");
			if(this.result!=null && this.result.size()>0){
				for(int i = 0;i<this.level-1;i++){
					re.append(this.result.get(i)+",");//result content
				}
			}else{
				for(int i = 0;i<this.level-1;i++){
					re.append(result.get(i)+",");//result content
				}
			}
		}
		return re.toString();
	}