n隊伍比賽,每兩支隊伍比賽一次,平1勝3負0.
給出隊伍的最終得分,求多少種可能的分數表。
第一行包含乙個正整數n,隊伍的個數。第二行包含n個非負整數,即每支隊伍的得分。
輸出僅一行,即可能的分數表數目。保證至少存在乙個可能的分數表。
65 6 7 7 8 8
n<=8
這麼小的範圍肯定是搜尋啊。狀態即為當前比賽是哪兩支隊伍在進行,搜尋比分表的上三角區域(不包括對角線)。當搜尋到第n行時,如果滿足要求即可讓答案加1。但是我們需要幾個剪枝。
然後就跑過去了。
#include #include #define n 10
using namespace std;
int n,i,s[n],a[n],ans;
int read()
return w;
}bool check()
return 1;
}void dfs(int x,int y)
if(a[x]+3*(n-y+1)if(y==n)
else if(s[x]-a[x]==0||s[x]-a[x]==3)
return;
}if(a[x]+1<=s[x]&&a[y]+1<=s[y])
if(a[x]+3<=s[x])
if(a[y]+3<=s[y])
}int main()
洛谷P1627 CQOI2009 中位數
給出1 n的乙個排列,統計該排列有多少個長度為奇數的連續子串行的中位數是b。中位數是指把所有元素從小到大排列後,位於中間的數。第一行為兩個正整數n和b,第二行為1 n的排列。資料規模 對於30 的資料中,滿足n 100 對於60 的資料中,滿足n 1000 對於100 的資料中,滿足n 100000...
洛谷P4170 CQOI2007 塗色
假設你有一條長度為5的木版,初始時沒有塗過任何顏色。你希望把它的5個單位長度分別塗上紅 綠 藍 綠 紅色,用乙個長度為5的字串表示這個目標 rgbgr。每次你可以把一段連續的木版塗成乙個給定的顏色,後塗的顏色覆蓋先塗的顏色。例如第一次把木版塗成rrrrr,第二次塗成rgggr,第三次塗成rgbgr,...
洛谷 P4170 CQOI2007 塗色
假設你有一條長度為5的木版,初始時沒有塗過任何顏色。你希望把它的5個單位長度分別塗上紅 綠 藍 綠 紅色,用乙個長度為5的字串表示這個目標 rgbgr。每次你可以把一段連續的木版塗成乙個給定的顏色,後塗的顏色覆蓋先塗的顏色。例如第一次把木版塗成rrrrr,第二次塗成rgggr,第三次塗成rgbgr,...