> description
春節的時候tenshi去逛花市。她來到乙個賣盆竹的攤位,看到一盆叫做「步步高公升」的盆竹。「步步高公升,步步高公升……」學習就是要一步一步來,不能急,要打好基礎。在穩固的基礎上才談得上步步高公升!tenshi若有所思。她看到這盆東西好意頭,於是想買下。誰知一問價錢,「不貴不貴,才2xxrmb。」tenshi差點沒昏倒,囊中羞澀嘛。但是tenshi還是很想買下來,於是她就在一旁觀察。觀察了一段時間,她發現這個賣盆竹的人和別人殺價很有規律。設此人第i次**為wi元,那麼他第i+1次報的**為wi-a或wi -b。到了最後,tenshi以z元成交,高高興興的回家去了。
求tenshi把盆竹的**由w1元殺到z元的方法總數。
> input
第一行有兩個正整數w1和z。第二行有兩個正整數a和b。它們滿足條件:
10 ≤ w1 ≤106,1 ≤ z ≤ 106 ,z < w1
2 ≤ a 、b ≤ 10000,a≠b
> output
方法總數
注意:結果不超過maxlongint
> sample input
樣例1256 88
5 9樣例2
100 10
13 23
> sample output
樣例13889832
樣例20
> 做題思路
首先知道:ax+by=w-z(x/y為a/b減價的次數)。
如何實現:用乙個類似於雞兔同籠的for語句。當條件實現的時候,就用ans累加一組有重複元素的全排列p(x,y)。
ps:有重複元素的全排列的個數=(x+y)!/x!y!。為了簡化**,可以先簡化公式。簡化後的公式——(x+y)!/x!y! = x!(x+1)(x+2)…(x+y)/x!y! = **(x+1)(x+2)…*(x+y)/y!**。
> **
#include
#include
using namespace std;
long long w,z,a,b,ans=0;
int n,m;
long long ooo
(int n1,int m1)
void
lil()}
}int main()
DP 步步高公升
春節的時候tenshi去逛花市。她來到乙個賣盆竹的攤位,看到一盆叫做 步步高公升 的盆竹。步步高公升,步步高公升 學習就是要一步一步來,不能急,要打好基礎。在穩固的基礎上才談得上步步高公升!tenshi若有所思。她看到這盆東西好意頭,於是想買下。誰知一問價錢,不貴不貴,才 tenshi差點沒昏倒,囊...
SSL 步步高公升
春節的時候tenshi去逛花市。她來到乙個賣盆竹的攤位,看到一盆叫做 步步高公升 的盆竹。步步高公升,步步高公升 學習就是要一步一步來,不能急,要打好基礎。在穩固的基礎上才談得上步步高公升!tenshi若有所思。她看到這盆東西好意頭,於是想買下。誰知一問價錢,不貴不貴,才 tenshi差點沒昏倒,囊...
13絕招教你步步高公升
1 弄清楚你上司的上司是誰。要知道這可是將來很有可能推薦或提拔你的人喲!2 請老闆指出你什麼方面需要不斷改進。3 一定要讓別人知道 你要麼每天都是第乙個上班的,要麼每天都是最後乙個下班的。或者兩者兼而有之,但切莫長此以往。這是職業生涯中乙個良好的開端,但終究不是一種理想的生活。4 要樹立起 解題能手...