[我是傳送門]
這是一道很經典的深搜與回溯(難度一般)
可是就這個"普及-"
讓本蒟蒻做了一晚上+半個上午(實際我不會深搜回溯,全靠框架+去重);
下面讓我分享下本蒟蒻的(全排列+暴搜去重)
#includeusingnamespace
std;
int n,r,ttt;//
n是總數,r是選的數,ttt是答案
int a[1001],b2[1001],c[10001][101];//
a用來儲存排列的編號,b2用來儲存輸入的數,c用來去重(儲存符合條件的陣列的編號)
bool b[1001];//
用來判斷是否用過
bool ss2(int t)
if(tot==0)//
如果沒有乙個不一樣的說明重複
return0;
tot=0;//
一定要清空!!!!
}
return
1;//
如果全不重複,說明不重
}bool sus(int y)
return1;
}void print()
}}void ss(int k)
}}int
main()
洛谷題解 P1036 選數
洛谷,已知 n 個整數 x1 x2 xn 以及1個整數k k3 7 12 22 3 7 19 29 7 12 19 38 3 12 19 34 現在,要求你計算出和為素數共有多少種。例如上例,只有一種的和為素數 3 7 19 29。鍵盤輸入,格式為 n,k 1 n 20,kx1 x2 xn 1 xi...
P1036 選數 題解
題目鏈結 已知 nn n 個整數 x1,x2,xnx 1,x 2,x nx1 x2 xn 以及 11 1 個整數 kk k k k n 從 nn n 個整數中任選 kk k 個整數相加,可分別得到一系列的和。例如當 n 4,k 3n 4,k 3n 4,k 3 44 4 個整數分別為 3,7,12,1...
題解 P1036 選數
嗯,新手試煉場的,錯了兩次,對,我是蒟蒻。因為這道題對我有幫助,所以,它是好題。錯啦兩次,好尬的。49 17 100 不費話了,過程函式與遞推。當然要遞推 49分的不說了,從未先編譯一下試試。跟著題目走,判斷質數。來一段辣雞 includeusing namespace std int n,k in...