随笔分类 - 测试题解
摘要:【初二国庆集训 CSP模拟赛4】 面试【第二场T1】 用map统计即可 #include<bits/stdc++.h> using namespace std; int main() { int t; scanf("%d",&t); while(t--) { string s; cin>>s; ma
阅读全文
摘要:今天是集训的最后一天,提一首小词送给自己 莫听穿林打叶声,何妨吟啸且徐行。 竹杖芒鞋轻胜马,谁怕?一蓑烟雨任平生。 料峭春风吹酒醒,微冷,山头斜照却相迎。 回首向来萧瑟处,归去,也无风雨也无晴。 Ticket Game 标签:思维 考虑Bob在什么情况下会输。如果他在最后一次填数时两边的差距已经超过
阅读全文
摘要:流浪月球【第四周】 #include <bits/stdc++.h> using namespace std; typedef long long ll; const ll mod=1e9+7; ll dp[2005],pre[2005]; //dp[i][j]指在前i天恰好选j个的方案数 //pr
阅读全文
摘要:乘积最大 由于题目给定的是m,需要分解成m+1部分的乘积,不难想到乘号刚好是m个,那么该题就转化成了m个乘号的插入方式。 最优子结构分析: 设数字字符串为a1a2…an m=1 时,一个乘号可以插在a1a2…an中的n-1个位置,这样就得到n-1种乘积: a1*a2…an, a1a2*a3…an,
阅读全文
摘要:Hash 键值 (hash) 【思路】按照正常模拟,很容易写出代码,如图: for(int i=1;i<=q;i++) { int opt; scanf("%d",&opt); if(opt==1) { int x,y,ans=0; scanf("%d %d",&x,&y); for(int i=y
阅读全文
摘要:Kuglarz 首先,有一个比较明显的结论: 必须要知道每一个位置的奇偶性,才能知道所有位置有没有小球。 再仔细一想,每一个位置的奇偶性可以有两种方法推出来: 直接花费 ai,i 得到; 花费两个区间的价值 ai,j+ai+1,j 得到。 可是区间的价值又可以从两个区间推来,那就很难处理了。 考虑把
阅读全文
摘要:前言 写这篇题解的时候我已经准备好退役了,由于本人学艺不精,已无力继续。 正文 LINK:X-Magic Pair 标签:思维,数学,推公式 在每一步设a>b,则转移是这样的:(a,b) -> ( a - b,b ),(a, a - b) -> 右边:(a, b), ( b,a-b) 一个走回去了,
阅读全文
摘要:LINK:木棒 标签:dfs,剪枝 注(dfs剪枝的几个方面):1、搜索顺序(优先搜索决策少的)2、排除冗余信息(去掉重复的,没有用的)3、可行性剪枝(如果当前方案到当前位置可以判断出已经不能继续执行,则return)4、最优性剪枝(如果当前不是最优,则return)4、记忆化剪枝(类似dp) 这道
阅读全文
摘要:食物链 首先考虑题目中所说的 3 种矛盾情况中的后两种,都很好判断,关键是如何判断当前的话是与前面的话冲突的。 这里我们先给出两个定理以方便判断一些关系: 一。因为三个种族都有一个且且仅有一个能吃的种族。如果动物 A 能吃 B,动物 C 也能吃 B,那么说明A 和 C 便是同一个种族,否则这个关系就
阅读全文