考慮具有以下形式的方程: a1x13 + a2x23 + a3x33 + a4x43 + a5x53 = 0直觀思路就是乙個個列舉,時間複雜度是o(n^5)係數是從區間[-50,50]起的整數。 考慮解決方案(x1,x2,x3,x4,x5)來驗證方程xi∈[-50,50],xi!=
0,任何i∈。
確定滿足給定方程的解數。 輸入項 輸入的唯一行包含由空格分隔的5個係數a1,a2,a3,a4,a5。 輸出量
輸出將在第一行包含給定方程的解數。
sample input
37 29 41 43 47
sample output
實際上,我們可以把它變形成:
a1x13+a2x23+a3x23=-(a4x43+a5x53)
分兩部分處理,一次處理左邊雜湊,一次列舉右邊進行判斷
因為同乙個值出現有多種情況,所以還要儲存次數:
code:
#includeusing namespace std;
const unsigned long long maxn=999999999;
const int p=133301;
int h[1000001],num[1000001],val[1000001],nxt[1000001],tot;
void put(long long x)
} if(flag)else num[i]++;//儲存次數
}int find(int x)
} if(flag) return 0;
else return num[i];
}int a[5];
long long getx(long long x)
int ans;
int main()//第二部分
cout《時間複雜度是o(n3+n2)
然後是一道類似的:
poj2785 4個總和為0的值
描述同樣的思路,我們分兩撥處理sum問題可以表示為:給定四個具有整數值的列表a,b,c,d,計算多少個四元組(a,b,c,d)∈a x b x c x d使得a + b
輸入檔案的第一行包含列表n的大小(該值可以最大為4000)。然後,我們有n行包含四個分別屬於a,b,c和d的整數值(絕對值最大為2 28)。
輸出量對於每個輸入檔案,您的程式必須編寫四倍數,其總和為零。 樣本輸入
6-45 22 42 -16
-41 -27 56 30
-36 53 -37 77
-36 30 -75 -46 26 -38 -10 62
-32 -54 -6 45 樣本輸出
code:
#includeusing namespace std;
const unsigned long long maxn=999999999;
const int p=4000*4000+7;//這裡的素數很毒
int h[p+10],nxt[p+10],num[p+10],val[p+10],tot;
inline void add(int k,int x)
void put(int x)
}if(flag)num[i]++;
}int find(int x)
}if(flag) return 0;
else return num[i];
}int a1[4001],a2[4001],a3[4001],a4[4001],n;
int ans;
int main(){
cin>>n;
for(int i=1;i<=n;i++) cin>>a1[i]>>a2[i]>>a3[i]>>a4[i];
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++) put(a1[i]+a2[j]);
for(int i=1;i<=n;i++)
for(int j=1;j<=n;j++) ans+=find(-(a3[i]+a4[j]));
cout《未完待續
學習筆記 雜湊學習筆記
hash基本原理 hash就是乙個像函式一樣的東西,你放進去乙個值,它給你輸出來乙個值。輸出的值就是hash值。一般hash值會比原來的值更好儲存 更小 或比較。那字串hash就非常好理解了。就是把字串轉換成乙個整數的函式。而且要盡量做到使字串對應唯一的hash值。它的主要思路是選取恰當的進製,可以...
雜湊學習筆記
雜湊錶用的是陣列支援按照下標隨機訪問資料的特性,所以雜湊表其實就是陣列的一種擴充套件,由陣列演化而來。可以說,如果沒有陣列,就沒有雜湊表。它是乙個函式。我們可以把它定義成hash key 其中 key 表示元素的鍵值,hash key 的值表示經過雜湊函式計算得到的雜湊值。三點雜湊函式基本要求 開放...
雜湊學習筆記
大概日後會更新 零.hash的用途 在資料範圍不大的時候,你完全可以用乙個map或者set來搞定 如果可以用c 11,你還可以用undered map來搞定 然鵝map也是hash實現的 所以當資料範圍很大 你莫得c 11 出題人毒瘤的時候,就需要雜湊 為了愉快的進行hash,下面煮的栗子預設出題人...