- 博客(19)
- 收藏
- 关注
原创 双重回文
原题链接Code:Code:Code:#include <bits/stdc++.h>using namespace std;bool Base(int S,int B){ string str=""; while( S > 0 ){ int k = S % B; if( k < 10 ){ char C = k + '0'; str+=C; } e
2021-01-10 16:10:18
8
原创 转换
原题链接Code:Code:Code:#include <bits/stdc++.h>using namespace std;#define MaxN 15char strA[MaxN][MaxN];char strB[MaxN][MaxN];char strC[MaxN][MaxN];char T[MaxN][MaxN];int n;bool isOk(){ for(int i=1; i<=n; i++){ for(int j=1; j<
2021-01-10 13:21:45
15
原创 回文平方
原题链接注意答案要求输出的是B进制下的表示。Code:Code:Code:#include <bits/stdc++.h>using namespace std;int B;string Base(int x){ string S=""; while( x > 0 ){ int k = x % B; if( k < 10 ){ char C = k + '0'; S+=C;
2021-01-07 15:31:51
11
原创 序号命名
原题链接Code:Code:Code:#include <bits/stdc++.h>using namespace std;char solve(char T){ if( T <= 'C' ) return '2'; else if( T <= 'F' ) return '3'; else if( T <= 'I' ) return '4'; else if( T <= 'L' ) return '5'; else if(
2021-01-05 21:11:39
9
原创 挤牛奶
原题链接题解思路:区间合并Code:Code:Code:#include <bits/stdc++.h>using namespace std;#define MaxN 5010#define PII pair<int,int>PII segs[MaxN];signed main(){ ios::sync_with_stdio(false); cin.tie(0),cout.tie(0); int n; cin >> n;
2021-01-05 20:15:52
8
原创 十三号星期五
十三号星期五#include <bits/stdc++.h>using namespace std;int days[13]={0,31,28,31,30,31,30,31,31,30,31,30,31},weeks[8];bool isOk(int year){ return year % 4 == 0 && year % 100 != 0 || year % 400 == 0; }signed main(){ ios::sync_with_stdio(fals
2020-12-18 20:03:45
12
1
原创 贪婪的送礼者
贪婪的送礼者#include <bits/stdc++.h>using namespace std;#define MaxN 15struct Node{ string name; int score;}people[MaxN];map <string,int> Map;signed main(){ ios::sync_with_stdio(false); cin.tie(0),cout.tie(0); int Np; c
2020-12-18 20:02:21
10
1
原创 你的旅途由此开始
你的旅途由此开始#include <bits/stdc++.h>using namespace std;typedef long long LL;bool solve(string A,string B){ LL sumA=1,sumB=1; for(int i=0; i<A.size(); i++){ sumA*=A[i]-'A'+1; sumA%=47; } for(int i=0; i<B.size();
2020-12-18 20:01:10
12
1
原创 异或
原题链接考虑异或的两个基础性质。1.1.1.kkk个相同的数的异或和,当kkk为奇数时,结果是这个数本身,否则结果是 000。2.2.2.任何数与000的异或值是它本身。由题意我们可以知道当iii是kkk的整数倍时,A[i]A[i]A[i]需要异或上vvv,因此根据n/kn/kn/k就知道了有多少个数需要被修改,根据性质111判断奇偶再决定sumssumssums是否需要修改。设sums=A xor B xor C xor Dsums=A\;xor\;B\;xor\;C\;xor\;D
2020-10-10 21:33:05
30
原创 完美子串
原题链接思路分析:根据中位数的性质,我们可以知道在一定的区间范围内,所有大于它与小于它的数的个数是相等的。所以如果一个区间满足大于中位数与小于中位数的个数相等,且中位数在其中,则是符合题意的区间。(设大于中位数个数与小于中位数个数均为 nnn ,加上中位数自己本身,总长度为 2∗n+12*n+12∗n+1,长度必定为奇数,无需特判。)在读入的时候,将大于中位数的数据赋值 111,小于中位数的数据赋值 −1-1−1 ,等于中位数的数据赋值 000 ,并记录中位数的下标,左右遍历统计即可。左遍历的时候
2020-10-08 16:30:19
13
原创 整数拼接
原题链接参考题解题目的考点在于如何快速求A[i]A[i]A[i]与A[j]A[j]A[j]拼接后是否为KKK的倍数。首先思考A[i]A[i]A[i]与A[j]A[j]A[j]拼接后的数为A[i]∗10length(A[j])+A[j]A[i]*10^{length(A[j])}+A[j]A[i]∗10length(A[j])+A[j]。那么对于(A[i]∗10length(A[j])+A[j]) mod K=0(A[i]*10^{length(A[j])}+A[j])\;mod\;K=0(A[i
2020-09-07 22:45:23
72
原创 糖果传递
原题链接思路分析:环形均分纸牌模型设总和为sumssumssums,共有nnn张牌,易得avg=sumsnavg=\frac{sums}{n}avg=nsums。由下图我们可以列出关系式:{a1+x2−x1=avga2+x3−x2=avg…an+x1−xn=avg\begin{cases} a_1+x_2-x_1=avg& \\a_2+x_3-x_2=avg& \\\ldots \\a_n+x_1-x_n=avg\end{cases}⎩⎪⎪⎪⎨⎪⎪⎪⎧a1+x2−x1
2020-08-21 09:42:18
45
原创 方格取数
原题链接思路分析:因为要走出两条路径,普通的二维dpdpdp只能推导一个人走一次。因此考虑四维dpdpdp,设dp[i][j][u][v]dp[i][j][u][v]dp[i][j][u][v]为第一个人走到(i,j)(i,j)(i,j)和第二个人走到(u,v)(u,v)(u,v)这样两条路径,使得取数最大。根据过河卒的经验,可以推导出dp[i][j][u][v]=max(dp[i−1][j][u−1][v],dp[i−1][j][u][v−1],dp[i][j−1][u−1][v],dp[i][j−
2020-08-17 20:52:37
31
原创 牛客练习赛67 题解报告(未完成)
比赛链接A 牛牛爱字符串思路分析:简单模拟即可AC。需要注意的是如果将字符串中所有数字提取出来的话,如果数字长度过大,很容易溢出。建议直接确定数字在字符串中的首尾位置后遍历输出。Code:Code:Code:#pragma GCC optimize(2)#pragma GCC optimize(3)#include <bits/stdc++.h>using namespace std;#define MaxN 100010//#define MOD 998244353
2020-08-16 00:38:08
75
原创 线段树
#pragma GCC optimize(2)#pragma GCC optimize(3)#include <bits/stdc++.h>using namespace std;#define MaxN 100010//#define MOD 998244353#define PI acos(-1.0)#define INF 0x3f3f3f3f#define endl '\n'#define LL long long#define PII pair<int,int&
2020-08-12 00:16:04
35
原创 波动数列
原题链接思路分析:我们可以将每一次操作封装成 P=(+a,−b)P=(+a,-b)P=(+a,−b) ,那么对于每一种满足条件的数列均有 xxx,x+P1x+P_1x+P1,x+P1+P2x+P_1+P_2x+P1+P2,…\ldots… ,x+P1+P2+…+Pn−1x+P_1+P_2+\ldots+P_{n-1}x+P1+P2+…+Pn−1。即S=x+x+P1+x+P1+P2+…+x+P1+P2+…+P(n−1)S=x+x+P_1+x+P_1+P_2+\ldots+x+P_1+P_2
2020-08-07 09:15:10
87
原创 背包模型
010101背包问题:每件物品只能不取或者只取111次。朴素做法:dp[i][j]={dp[i−1][j]不选第i件物品dp[i−1][j−v[i]]+w[i]选择第i件物品dp[i][j]=\begin{cases}dp[i-1][j]& \text{不选第i件物品}\\dp[i-1][j-v[i]]+w[i]& \text{选择第i件物品}\end{cases}dp[i][j]={dp[i−1][j]dp[i−1][j−v[i]]+w[i]不选第i件物品选择第i件物品简
2020-07-31 09:30:47
92
空空如也
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人 TA的粉丝