首页 > 代码库 > CF831C Jury Marks
CF831C Jury Marks
思路:
关键在于“插入”一个得分之后,其他所有得分也随之确定了。
实现:
1 #include <iostream> 2 #include <cstdio> 3 #include <set> 4 using namespace std; 5 const int MAXN = 2005; 6 int a[MAXN], b[MAXN], sum[MAXN]; 7 int main() 8 { 9 int k, n; 10 set<int> ans; 11 cin >> k >> n; 12 for (int i = 1; i <= k; i++) 13 { 14 cin >> a[i]; 15 sum[i] = sum[i - 1] + a[i]; 16 } 17 for (int i = 1; i <= n; i++) cin >> b[i]; 18 for (int i = 1; i <= k; i++) 19 { 20 set<int> s; 21 for (int j = 1; j <= k; j++) 22 { 23 if (i == j) continue; 24 s.insert(b[1] - (sum[i] - sum[j])); 25 } 26 bool flg = true; 27 for (int j = 2; j <= n; j++) 28 { 29 if (!s.count(b[j])) { flg = false; break; } 30 } 31 if (flg) ans.insert(b[1] - sum[i]); 32 } 33 cout << ans.size() << endl; 34 return 0; 35 }
CF831C Jury Marks
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。