4.4k4 分钟

这场感觉自己就是个菜鸡不能再菜了 A题一开始想暴力打表出奇迹,但到n=5时,暴力方法就要几十秒出一个答案 然后看出了的几个数据猜测出答案为,而事实上对于题中限制条件来说,满足与不满足概率均等,所以才为此答案 赛后看了几个a掉了B题的代码,知道了题意图的连接不一定要组成一个多边形,可以是一点发散,所以对于的情况只需即可 思维局限 UPD: C和D都是面向数据编程,TLE卡得难受 C题要构建一个除四角外的边均为1,内部为0的矩阵所以最差的结果应该是,所以对一矩阵内部和已大于等于16的进行break剪枝,相应的,如果剩下的区域内和小于等于2也一并break D题是个dp题 A: c
1.2k1 分钟

转移方程推出来的和题解一样,但dp代码不同导致WA AC的: LL s, n, m, a[301][301], dp[30010],ans; int main() { ios::sync_with_stdio(false); cin.tie(0); cin >> s >> n >> m; f(i, 1, s) { f(j, 1, n) cin >> a[j][i - 1]; } f(i, 1, n) sort(a[i], a[i] + s);
3581 分钟

用bitset的位操作来优化过程 但却不知道怎么普通的做,,,, #include<bitset> using namespace std; LL v,n,res; bitset<30000> dp; int main() { IN;OUT; v=io.xint(); n=io.xint(); dp.reset(); dp.set(0); f(i,0,n-1){ dp|=(dp<<io.xint()); } for
2.5k2 分钟

#include <iostream> using namespace std; const double eps = 1e-10; const double pi = 3.1415926535897932384626433832795; const double eln = 2.718281828459045235360287471352; #define f(i, a, b) for (int i = a; i <= b; i++) #define LL long long #define IN freopen(&qu