【OJ】洛谷暴力枚举题单题解锦集
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                【OJ】洛谷暴力枚举题单题解锦集
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.                        
                                題單簡介
題目解析
- P2241 統計方形(數據加強版)
- P2089 烤雞
- P1618 三連擊(升級版)
- P1036 選數
- P1157 組合的輸出
- P1706 全排列問題
- P1088 火星人
- P3392 涂國旗
- P3654 First Step
- P1217 回文質數
- P1149 火柴棒等式
- P3799 妖夢拼木棒
- P2392 kkksc03考前臨時抱佛腳
- P2036 PERKET
P3799題AC代碼
#include <iostream>using namespace std;const long long mod = 1e9+7;int nums[100100], visited[100100];long long combine(long long k) {// $C_{k}^{2}$ 然后取模return ((k*(k-1))/2)%mod; }int main() {int n, max_len = -1, i, j;cin >> n;for (i = 0; i < n; i++) {cin >> nums[i];max_len = max(max_len, nums[i]);visited[nums[i]]++;}long long result = 0;for (i = 0; i < max_len; i++) {for (j = i; j < max_len; j++) {if (i == j) {result = (result+(combine(visited[i])*combine(visited[i+j])))%mod;} else {result = (result+((visited[i]*visited[j])%mod*combine(visited[i+j]))%mod)%mod;}}}cout << result;return 0; }P2392題AC代碼
#include <iostream> #include <cstring>using namespace std;int homework[20], dp[1234];int main() {int nums[4], i, j, k, sum, result = 0;for (i = 0; i < 4; i++) {cin >> nums[i];}for (i = 0; i < 4; i++) {sum = 0;for (j = 0; j < nums[i]; j++) {cin >> homework[j];sum += homework[j];}for (j = 0; j < nums[i]; j++) {for (k = sum/2; k >= homework[j]; k--) {dp[k] = max(dp[k], dp[k-homework[j]]+homework[j]);}}result += sum - dp[sum / 2];memset(dp, 0, sizeof(dp));}cout << result;return 0; }總結
以上是生活随笔為你收集整理的【OJ】洛谷暴力枚举题单题解锦集的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: Visual Studio 2008 当
- 下一篇: 作者:李明,男,中兴通讯股份有限公司产品
