T1 找试场 题解】的更多相关文章

拖延症又犯了QwQ. 今天上午考试了,按照惯例,我仍然要把我会的所有题的题解写一遍. 1.找试场(way.cpp/in/out) 问题描述 小王同学在坐标系的(0,0)处,但是他找不到考试的试场,于是一边走路一边问路, 每个被问路的人会告诉他一个指令(包括走路或转弯),现在请编一个程序,显示他每次走 路后的坐标(转弯后坐标不变,所以不必显示坐标). 初始方向向 y 轴正半轴!! 输入格式 第一行一个数 n,表示有 n 个指令,接下来 n 行每行一个指令,每个指令是“left” 或 “right”…
洛谷P3412 仓鼠找\(Sugar\ II\)题解(期望+统计论?) 标签:题解 阅读体验:https://zybuluo.com/Junlier/note/1327573 原题链接:洛谷P3412 仓鼠找sugar II 好像只有洛谷有诶... 日常吐槽 这个期望题开发新思维方式还是比较好的... 毕竟还是很难想的...鸣谢\(fdfDarkfire\)教我做这个题! 题解来了 很容易发现答案就是\(\dfrac{\sum_{i=1}^{n}\sum_{i=1}^{n}dis[i][j]}{…
这场就做出一道题,怎么会有窝这么辣鸡的人呢? 1001 A Boring Question(hdu 5793) 很复杂的公式,打表找的规律,最后是m^0+m^1+...+m^n,题解直接是(m^(n+1)-1)/(m-1),长姿势,原来还能化简…… 我既然不会推公式,也没啥好写的.写一下我打表的代码吧…… #include <cstdio> typedef long long ll; int n, m; ll sum; ll fac[]; ]; void init() { fac[] = ;…
题目 比赛界面. T1 不难想到,对于一个与\(k\)根棍子连接的轨道,我们可以将它拆分成\(k+1\)个点,表示这条轨道不同的\(k+1\)段. 那么,棍子就成为了点与点之间的边.可以发现,按照棍子连边之后,我们一定可以得到一些链.假设每条轨道的最后一段作为链头,查询实际上就是查询所在链的链头. 使用 LCT 或 Splay 维护这些链即可,时间\(O(n\log_2n)\). #include <cstdio> #include <vector> using namespace…
1001.AND Minimum Spanning Tree 传送门:HDU6614 题意:给你一个又n个点的完全图,点编号从1~n,每条边的权值为被连接的两点编号按位与后的值.现在要你找到最小生成树,输出这个最小生成树的值 和 从2~n每个点相连的点(要求字典序最小). 题解:因为是进行二进制操作,我们把数写成二进制形式可以发现,对于一个数x我们找到其从最低位开始第一个0位i,&上只有这一位是1其他位为0的数时与的结果为0.显然,只有n为2的次方-1时最小生成树的值为1,其他情况下每个点都能找…
A.Equivalent Prefixes 传送门 题意:给你两个数组,求从第一个元素开始到第p个元素 满足任意区间值最小的元素下标相同的 p的最大值. 题解:我们可以从左往右记录到i为止每个区间的最小值有哪些,因为每个值都是不一样的,对于当前的 i 如果1~i中每个区间最小值数量相同那么下标肯定也会相同,否则记录的值的数量就会不同,我们可以用单调栈记录目前为止每个区间的“最小值”的下标,栈里面元素数量不同时肯定不满足条件. 代码: #include <bits/stdc++.h> #defi…
题目 比赛界面. T1 数据范围明示直接\(O(n^2)\)计算,问题就在如何快速计算. 树上路径统计通常会用到差分方法.这里有两棵树,因此我们可以做"差分套差分",在 A 树上对 B 的差分信息进行差分.在修改的时候,我们就会在 A 上 4 个位置进行修改,每次修改会涉及 B 上 4 个位置的差分修改,因此总共会涉及 16 个差分信息的修改. 回收标记的时候,我们可以先在 A 树上进行 DFS ,回收好子树内的差分信息后,再进行一次 B 的回收,得到当前节点上 B 的真实信息. 时间…
题目   比赛界面. T1   比较简单.容易想到是求鱼竿的最大独立集.由于题目的鱼竿可以被分割为二分图,就可以想到最大匹配.   尝试建边之后会发现边的数量不小,但联系题目性质会发现对于一条鱼竿,它会影响的垂直方向上的鱼竿一定是一个区间,因此再套一发线段树优化即可.   这里不建议写倍增优化,因为倍增的点是\(O(n\log_2n)\),而网络流的时间是\(O(n^2m)\),因此可能会慢一些.   当然,你知道,这细网咯流咩......时间复杂度还是比较emmmm......的   代码:…
牛客编程巅峰赛S2第6场 A-StringⅡ 题目 题目描述 给出一个仅包含小写字母的字符串s,你最多可以操作k次,使得任意一个小写字母变为与其相邻的小写字母(ASCII码差值的绝对值为1),请你求出可能的最长相等子序列(即求这个字符串修改至多k次后的的一个最长子序列,且需要保证这个子序列中每个字母相等). 子序列:从原字符串中取任意多个字母按照先后顺序构成的新的字符串. 示例1 输入 2,"abcde" 返回值 3 示例2 输入 10,"acesxd" 返回值 4…
contesthunter暑假NOIP模拟赛#1题解: 第一题:杯具大派送 水题.枚举A,B的公约数即可. #include <algorithm> #include <cmath> #include <iostream> using namespace std; #define MAXN 100010 struct node { int a,b,c; }ans[MAXN]; int main() { int R, G; scanf("%d%d",&…