乙個集合x有都不相同的n個元素,使用這個集合中的不定個數的元素,組成乙個和為s的序列,求出所有符合的序列,元素可以重複使用,只要元素的個數相同不考慮順序。
比如集合是x=; n=5, s=12可以得出以下的序列:
2 2 2 2 2 2
2 2 2 2 4
2 2 2 3 3
2 2 3 5
2 2 4 4
2 3 3 4
2 3 7
2 5 5
3 3 3 3
3 4 5
4 4 4
5 7
#include #include using namespace std;
int pushvector(int *x,int n,int s,vector&tablelist,int position)
else if(s==0)
int main(int argc, char** argv)
; int n =5;
int s=12;
findresult(x,n,s);
system("pause");
return 0;
}
#include #include using namespace std;
int pushvector(int *x,int n,int s,vector&tablelist,int position)
else if(s==0)
int main(int argc, char** argv)
; int n =5;
int s=12;
findresult(x,n,s);
system("pause");
return 0;
}
#include #include #include #include #include #define _debug 1
#define maxm 20
#define maxn 10
int arr[maxn];//數陣列
bool path[maxn][maxm+1];//路線
bool hashtable[maxm+1];//是否存在
int c;//記錄列印佇列大小
int v[maxm+1];//列印佇列,陣列大小最大為maxn+1,此時每個數為1
void printpath(int i,int j,int c)
printf("%d\n",v[0]);
return;
} assert(path[i][j]);
v[c++]=arr[i];//將元素加入到列印佇列中
for(int k=1;k<=i;k++)
c--;//將元素從列印佇列中刪除
}void solve(int size,int m)
} }for(i=1;i<=size;i++) }}
int main()
solve(n,m);
return 0;
}
網路部分之link layer
在100base x 中,使用 4b 5b encoding。這種編碼的特點是將欲傳送的資料流每4bit 作為乙個組,然後按照 4b 5b 編碼規則將其轉換成相應 5bit 碼。5bit 碼共有32 種組合,但只採用其中 的 16種對應 4bit 碼的16 種,其他的 16種或者未用或者用作控制碼,...
人件讀書筆記(20)整體大於部分之和
公司級目標至關重要,因為它對團隊而言意義非凡。目標自身對團隊成員來說可能有一定的隨機性,但大家可以竭力去追求目標的實現 相信員工都會自動認同組織的目標,只能說明管理上的盲目樂觀 然而到了底層這種設計就失效了 僅僅希望用所謂的 職業素質 來保證大家都向同乙個方向前進,這完全就是撞大運 建立這個系統是乙...
鍊錶部分之單鏈表
鍊錶類 class heronode override public string tostring 新增 有兩種方法,頭插法和尾插法,頭插法新增的第乙個元素為鍊錶的最後乙個,新增順序與鍊錶順序相反 尾插法新增順序與鍊錶順序一致。我覺得頭插法有點不好理解,特別是鍊錶反轉的時候 下面新增只寫了尾插法的...