Asia-Tsukuba 2017】的更多相关文章

2017-2018 ACM-ICPC, Asia Tsukuba Regional Contest A Secret of Chocolate Poles 思路:暴力枚举黑巧克力的个数和厚黑巧克力的个数 代码: #pragma GCC optimize(2) #pragma GCC optimize(3) #pragma GCC optimize(4) #include<bits/stdc++.h> using namespace std; #define fi first #define s…
题目链接:Rake It In 比赛链接:ICPC Asia Nanning 2017 Description The designers have come up with a new simple game called "Rake It In". Two players, Alice and Bob, initially select an integer k and initialize a score indicator. An \(4 \times 4\) board is…
题目链接:Twice Equation 比赛链接:ICPC Asia Nanning 2017 Description For given \(L\), find the smallest \(n\) no smaller than \(L\) for which there exists an positive integer \(m\) for which \(2m(m + 1) = n(n + 1)\). Input This problem contains multiple test…
题目链接:The Chosen One 比赛链接:ICPC Asia Nanning 2017 题意 \(t\) 组样例,每组给出一个整数 \(n(2\le n\le 10^{50})\),求不大于 \(n\) 的最大的 \(2\) 的整数次幂. 题解 高精度运算 Java BigInteger 中的 bitLength() 方法可以直接计算某个大数二进制表示下的位数. 更多关于 Java BigInteger 的操作参见我的另一篇文章 大数运算之 Java BigInteger 的基本用法 i…
Welcome to the 2017 ACM-ICPC Asia Nanning Regional Contest.Here is a breaking news. Now you have a chance to meet alone with the Asia Director through a game.All boys and girls who chase their dreams have to stand in a line. They are given the number…
题目链接:http://codeforces.com/gym/101158/attachments /* * @Author: lyucheng * @Date: 2017-10-21 12:20:04 * @Last Modified by: lyucheng * @Last Modified time: 2017-10-21 21:12:12 */ /* * 题意:给你两个字符串,让你求最长子串,子串在两个字符串中都出现(长度相同,出现的字母次数相同就行) * * 思路:枚举每个长度的字符串…
A .Secret of Chocolate Poles 题意:有黑白两种木块,黑色有1,K两种长度: 白色只有1一种长度,问满足黑白黑...白黑形式,长度为L的组合种类. 思路:直接DP即可. #include<bits/stdc++.h> #define ll long long #define rep(i,a,b) for(int i=a;i<=b;i++) using namespace std; ; ll dp[][],ans; int main() { int L,K; sc…
题意:给n个点m条边的有向图.每次使一条边反向,问你1到2的最短路变短,变长,还是不变. 解法:遇到这种题容易想到正向求一遍最短路d1,反向再求一遍最短路d2.纪录原图上的最短路为ans,然后分开考虑各种情况. 变短的情况:d1[y[i]]+d2[x[i]]+z[i]<ans 否则就剩下不变和变长两种情况:那么如果边(x,y)是起点到终点的最短路必须边的话,就会变长,否则会不变. 接下来的问题是  怎么求最短路的必经边? 求出原图1到2最短路图(这里要和求单源点的最短路图区别开来,单源点的最短路…
这道题可以比较容易看出是线性DP.设dp[i]代表把前i个格子刷成目标状态的最小步数. 写出状态转移方程 dp[i]=min( dp[j]+calc(j+1,i) ) (i-j<=k) calc(j+1,i)代表把区间 [j+1,i] 的块刷成目标状态的最小代价. 那么问题在于怎么算calc(j+1,i).这里直接给出结论:calc=(s[i]-s[j])/2+1,意思是最小代价是先把区间[j+1,i]刷成段数比较多的那种颜色,然后再一段一段把段数较小的刷好.代价就是1+(s[i]-s[j])/…
菜鸡队训练实录 比赛记录:[名称:奖项 / 排名] 2018: ZJPSC                       Bronze      / 86 CCPC Jilin                 Bronze      / 95 ICPC  Shenyang        Bronze      / 74 ICPC  Qingdao          Honorable / 241 CCPC Finals              Bronze    / 43 2019: ZJPSC…