解析 棋盘上黑白格染色.曼哈顿距离偶数:奇偶性相同. 枚举有几种颜色分到白格,组合数计算即可. 注意预处理,时间还是比较宽裕的. 为了不重复计数,考虑枚举严格用了i种颜色,我们再枚举分配j种给白集合.设白集合.黑集合大小分别为s1,s2,那么这种分配方案对答案的贡献为 \(C^k_i\) \(C^k_i\) \(f_{s1,j}\) \(f_{s2,i-j}\) \(j!\) \((i-j)!\) \(f_{i,j}\) 表示第二类斯特林数,表示将i个数分配到j个集合的方案数. \(f_{i,j…
今天做题运气出奇的好,除了几处小错误调试之后忘记改掉了……最后还AK了……虽然题目不难,学长也说是福利局,但是对个人的鼓励作用还是挺大的……至此暑假训练就结束了,也算没有遗憾……. 题解如下: Problem A: 苦逼的MCA Time Limits:  1000 MS   Memory Limits:  65536 KB 64-bit interger IO format:  %lld   Java class name:  Main Description 在TUBN这个地方,有个苦逼的人…
题目涉及算法: 金币:入门题: 扫雷游戏:入门题: 求和:简单数学推导: 推销员:贪心. 金币 题目链接:https://www.luogu.org/problem/P2669 入门题,直接开一个循环遍历一下就可以了. 实现代码如下: #include <bits/stdc++.h> using namespace std; int n, ans = 0; int main() { cin >> n; for (int i = 1; n; i ++) { int t = min(i…
问题描述 有n个格子,从左到右放成一排,编号为1-n. 共有m次操作,有3种操作类型: 1.修改一个格子的权值, 2.求连续一段格子权值和, 3.求连续一段格子的最大值. 对于每个2.3操作输出你所求出的结果. 输入格式 第一行2个整数n,m. 接下来一行n个整数表示n个格子的初始权值. 接下来m行,每行3个整数p,x,y,p表示操作类型,p=1时表示修改格子x的权值为y,p=2时表示求区间[x,y]内格子权值和,p=3时表示求区间[x,y]内格子最大的权值. 输出格式 有若干行,行数等于p=2…
[题目链接] A - Who Is The Winner 模拟. #include <bits/stdc++.h> using namespace std; int T; int n; struct X { string name; int num; int ti; }s[10010]; bool cmp(X&a,X&b){ if(a.num != b.num) return a.num > b.num; return a.ti < b.ti; } int main…
A:HDU 1060 Leftmost Digit(求N^N的第一位数字 log10的巧妙使用) B:(还需要研究一下.....) C:HDU 1071 The area(求三个点确定的抛物线的面积,其中一个点是顶点) D:HDU 1077 Catching Fish(用单位圆尽可能围住多的点) E:HDU 1099 Lottery (求数学期望) F:HDU 1110 Equipment Box (判断一个大矩形里面能不能放小矩形) G:HDU 1155 Bungee Jumping(物理题,…
A题 水题,考察对行的读入和处理,注意使用long long #include <iostream> #include <cstring> #include <cstdio> using namespace std; int main() { char ch; , Min; ]; )) { Min = 1e9; a = ; ; i < strlen(S); i++) { if(S[i] == ' ') { Min = min(Min, a); a = ; } el…
4375: 孪生素数  Time Limit(Common/Java):1000MS/3000MS     Memory Limit:65536KByteTotal Submit: 324            Accepted:91 Description 所谓孪生素数指的就是间隔为 2 的相邻素数,它们之间的距离已经近得不能再近了,就象孪生兄弟一样.最小的孪生素数是 (3, 5),在 100 以内的孪生素数还有 (5, 7), (11, 13), (17, 19), (29, 31), (4…
把这题想复杂了,一直在考虑怎么快速的判断将选的边和已选的边无冲突,后来经人提醒发现这根本没必要,反正数据也不大开两个数组爆搜就OK了,搜索之前要先排除两种没必要搜的情况,这很容易想到,爆搜的时候注意几个小细节就可以了(代码代码注释中已标好) #include<cstdio> #include<cstring> #include<iostream> #include<vector> #include<utility> using namespace…
    bitset玄学完美优化复杂度? 题目描述 参加jsoi冬令营的同学最近发现,由于南航校内修路截断了原来通向计算中心的路,导致去的路程比原先增加了近一公里.而食堂门前施工虽然也截断了原来通向计算中心的路,却没有使路程增加,因为可以找到同样长度的路作替代.其实,问题的关键在于,路截断的地方是交通要点. 同样的情况也出现在城市间的交通中.某些城市如果出了问题,可能会引起其他很多城市的交通不便.另一些城市则影响不到别的城市的交通.jsoi冬令营的同学发现这是一个有趣的问题,于是决定研究这个问题…