- 博客(15)
- 收藏
- 关注
原创 DSU模板题(树上并查集)
众所周知,苏大的校园非常大,对于peter来说,有的时候需要从本部到东区上课真是十分头疼的一件事!而peter沉迷打cf(cross fire),常常晚上两点才睡觉,所以他早上总是起得很晚。又是一天早八时间!peter又要赶去上课了。peter想知道,从自己的宿舍到上课的教学楼需要的最短距离是多少,请聪明的你帮他算算吧。苏大的校园是一个 n×mn\times mn×m 大小的矩形,上面的每一个单元格由一个数字 aija_{ij}aij 表示,有以下三种含义:如果为−1-1−1,表示这个地方是草坪
2022-03-31 16:50:09 352
原创 记录一道大水题
You are given 2n pairs (ai,bi) of integers. Consider a complete graph on 2n vertices and define the weight of the edge (ij) to be wij=max(|ai−aj|,|ai−bj|,|bi−aj|,|bi−bj|).Determine the maximum weight of the matching in this graph.In other words, consider
2022-03-26 11:53:48 363
原创 【题解】A-series
There are N+1 different sizes of paper: A0, A1, A2, …, AN, where each size is twice larger than the next one.You have a0a_0a0 pieces of paper of size A0, a1 of size A1, …, aN pieces of size AN. You want to obtain at least b0 pieces of size A0, b1 of size
2022-03-24 21:37:09 638 1
原创 [HDU6754] Distinct Sub-palindromes
题目:HDU6754题意:S是长度为n的字符串。 S由小写英文字母组成。您的任务是计算具有最少亚种回文数的不同S的数目。 亚种回文是回文的子字符串。如果两个子回文式u和v的长度不同或对于某些i(0≤i≤length)ui≠vi,则它们是不同的。 例如,字符串“ aaaa”仅包含四个不同的子回文,即“ a”,“ aa”,“ aaa”和“ aaaa”。思路:注意到,当n = 1的时候,Sub-palindrome的数目最少为1,答案为26个字母。当n = 2的时候,aa的Sub-palindrom
2020-07-31 16:25:17 281
原创 [codeforces 1372C]Omkar and Baseball
题目: 1372C题意:给定一个从1~n的顺序不定的数组,定义一种排序操作:区间[L,R],操作后里面的所有数都不在原来的位置上。求几次操作可以把数组变成1,2,3,…n的顺序。思路:没有经过严格的论证,但是造了几个数据发现如下规律:1.排序操作最多进行两次。把所有在正确位置的数记为1,不正确位置的数记为0;比如52341 (01110)如果对于区间[1,5]排序,所有对1的操作都必须把1变成0;所有对0的操作一定可以把0变成1;无论是怎么样的乱序,都可以通过一次操作变成全部0;所以52
2020-07-12 16:59:23 182
原创 [苏州大学C++]2020春第三次考试,及考前三个小练习
说明:CSDN不允许上传附件,所以我不会把题目放上来。写这个博客的主要目的是为了让同校的学弟学妹们复习的时候有一个参考。当然,都是我自己写的,并不保证答案完全正确对本次考试,会简单的做一个解析。其他三次小练习,仅附上代码。有需要交流讨论、想要题目信息的同学,可以私信我。附上我的代码。你可能出现的问题有:0.没有考虑钳工等级的合理区间,我也扣了4分。在代码中已经做了修改。这也是绝大部分96分同学的扣分点。1.对于继承和派生的构造函数不知道怎么写。2.不知道该怎么删除不合理的数据。(从后往前删的办法应
2020-07-05 10:40:17 728
原创 [codeforces 559B]Equivalent Strings
题目:559B题意:给定两个字符串,判断是不是一个神奇的字符串。他们满足如下两个条件的其中之一:1、 A与B相等。2、 如果我们把字符串A分成两个长度相等的字符串A1,A2,并将字符串B分成两个长度相等的字符串B1,B2 然后他们满足以下的其中一项条件:(1) A1与B1是一对神奇的字符串,并且A2与B2是一对神奇的字符串。(2) A2与B1是一对神奇的字符串,并且A1与B2是一对神奇的字符串。思路:很显然用递归的思想,但是单纯的递归会TLE#include<iostream>
2020-06-07 20:49:43 247
原创 [codeforces 621C]Wet Shark and Flowers
题目:621C题意:n个人围坐一圈,每个人有从l到r范围内的一个数,如果他和旁边的那个人手里的数字的乘积是质数p的倍数,两个人都获得1000元。求所有人得到的钱的数学期望。思路:很多人都做出来的一道题目。比赛的时候因为先开了A题,写的心态炸裂,剩下半个小时就没做这道题。首先我们要知道的是,求1~n中有几个数能被k整除,只要求n/k取整就可以了。所以,一个人手里的数的范围l~r中,能被p整除的数的个数是:r/p-(l-1)/p 有的人可能会想化简成(r-l+1)/p 这是不对的 因为那个除号是整除
2020-06-07 20:15:58 465
原创 [codeforces 630K]Indivisibility
题目:630K题意:给你一个整数n,输出1到n中不能被k整除的数字的数量,k可以是【2,10】中的任意一个整数。思路:训练赛的B题,也是大部分人都做出来的一题。涉及到了数论的一些知识,要用到容斥定理。从1到n,不能被k整除的数的数量: n/k(k-1)+n%k*当然也可以反过来求能被k整除的数,再减,可能更方便。#include<bits/stdc++.h>using namespace std;long long RT(long long n,long long a){
2020-06-07 19:15:19 207
原创 [苏州大学C++]2020春第二次考试
题目描述:*请各位考生从课程教学群文件中下载数据文件 account.txt,然后将数据文件手动保存在 D 盘根文件夹下。按要求编写一个 deposit 类,用于存储文件account.txt 中的数据。该文件中每行记录一个账户的信息,包含 4 项数据,以 tab字符分隔,各个字段的信息如下:第 1 列表示账户名称 name;第 2 列表示账户存款余额 balance;第 3 列表示账户贷款余额 loan;第 4 列表示每次还贷金额 charge;根据 account.txt 文件中的数
2020-06-07 19:07:22 635
原创 [苏州大学C++]大一下C++第二次考试,迎接考试小练习3
题目如下:请按要求编写一个类Circle,用于描述一个圆形,并用给定的main函数测试Circle类的功能。Circle类的要求如下:包含圆形编号、圆心x坐标、圆心y坐标和半径等数据成员。圆形编号为整形。生成第1个圆形对象时编号为1,生成第2个圆形对象时编号为2,以此类推。每构造一个新的圆形,对象编号为当前最大编号加1(如当前最大编号为5,则生成的这个新圆形的编号应该为6)。是否需要其它数据成员,可视情况自行决定。提示:建议使用两个静态变量。一个静态变量用于记录当前圆形对象的个数,此变量的值可增大或
2020-06-01 20:45:06 884
原创 [位运算简单原理]用点阵显示汉字
参考:HZK16汉字16*16点阵字库的使用及示例程序今天课上老师让我们写一个用16*16的点阵字库显示汉字的程序,给了一个HZK16字库。但是奈何本人太过愚钝,上课时候没怎么听懂,只能在网上借鉴了大神的博客。我们想要显示一个汉字的1616的样子,就需要先明白这个原理。在HZK16字库中,用二进制的形式存储了很多汉字的形状。一个汉字使用32个字节储存。其中0代表空白(白色方块),1代表有笔画/墨水的黑色方块。比如这个“啊”字。一字节(byte)对应着8位(bit),8位中的每一位都代表着一个0或
2020-05-30 22:40:09 2119
原创 [codeforces 1360D] Buying Shovels
题目见: 1360D题意:给n把铁锹和一个数k,可以选择任意一个数1<= t <= k,每次都购买t个铁锹,求最少的购买次数。思路:求n的最大的但不大于k的因数,n除以这个因数就是答案。可以想到的是:1.在k>=n的情况下,只需要购买1次。2.正常来说,为了找到1到k范围内n的最大的因数,我们需要遍历1到k,但是这样很容易导致超时。优化的方法是:遍历1~√k,如果能找到一个数x被n整除,这说明它是其因数。并且,n/x也是其因数。例如第一组样例n=8,k=7如果遍历1~7则是:x=
2020-05-28 20:14:03 268 1
原创 [HDU6536] Hello XTCPC
题目题意:给一个字符串,寻找最多个数“xtCpc”的子串,有大小写区别。思路:对于队列不太熟悉,一开始用数组,自己造的数据死活过不了,交了两次也就没写了。用队列保存每个字母出现的下标,然后由x开始检索,查找符合条件的下标大于前一个字母下标的对象,不符合条件的,后面的也不可能成立,于是pop。查完到‘c’的时候,答案+1;如果超出就结束。/* @Author : Rye Wang @Version : 1.0 @E-mail : Rye10000010000@hotmail.com @Site:
2020-05-24 19:45:32 244
原创 [codeforces 1355A] Sequence with Digits
题目见:1355A题意:一个数a1,进行K次操作,每次加上a1各个位置上最大的数和最小的数的乘积。思路:K有可能取到很大,如果单纯模拟绝对会超时。观察题目可以发现,a1进行有限次操作后,各个位置上最小数会变成0,这个时候答案就是不变的了。#include<bits/stdc++.h>using namespace std;#define ll long long#define db cout<<"where"<<endl;int main(){ i
2020-05-24 19:37:41 209
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人