- 博客(19)
- 收藏
- 关注
原创 2021.11.04
类(class)类是一种用户自定义的类型,包含函数与数据的特殊“结构体”,扩充c++语言的类型体系。类中包含的函数,称为”成员函数“;包含的数据,称为”数据成员“。类中函数既可以在类中给出定义,也可以在类外给出定义。类的成员(数据,函数)可以根据需要分组,不同组设置不同的访问权限。权限种类:public(公有属性),private(私有属性),protected(保护属性)。用类来定义变量,该变量通常被称为”对象“。通过”对象名.成员名“的形式,可以使用对象的数据成员,或者调用对象的
2021-11-04 20:02:55
149
原创 2021.11.03
列表初始化的多种写法:int a[]={1,2,3};int a[]{1,2,3};变量初始化的多种写法: int a={3+5}; int a(3+5); int a{3+5}; int *a=new int(8); double *a=new double(8.0f);decltype: decltype与auto关键字一样,用于进行编译时类型推导。不同点在于auto是根据变量的初始值来推导出变量类型的,decltype是根据表达式推导出变量的类型的。...
2021-11-03 20:19:51
188
原创 2021.11.02
2021.11.02 c语言预编译指令#define 定义宏#include<iostream>#define i 1using namespace std;int main(){ cout<<i<<endl; return 0;}结果为#undef 取消已定义的宏#include<iostream>#define i 1#undef i using namespace std;int ma.
2021-11-03 15:10:30
183
原创 2021-11-01
C语言的编译:编译、汇编。源代码(.c)->编译器->汇编代码(.os)->汇编器->目标代码(.o)->链接器->可执行程序。编译 :文本形式源代码翻译为机器语言形式的目标文件的过程。链接:把目标文件、操作系统的启动代码和用到的库文件进行组织形成最终生成可加载、可执行代码的过程。.h与.c文件的关系像是书籍目录与对应内容关系:一般.h里面是声明,.c里面是具体实现。可以将.c文件编译为.obj或者是.lib文件分享给他人调用而不暴漏源代码。.i文件:
2021-11-01 20:30:45
267
原创 It Rains Again
差分#include<iostream>#define int long long using namespace std;int n;int a[100005];int k=0;int ans=0;signed main(){ cin>>n; for(int i=1;i<=n;i++){ int x1,y1,x2,y2; cin>>x1>>y1>>x2>>y2; a[x1]++; a[x2
2021-10-26 13:28:59
287
原创 Mio visits ACGN Exhibition
题目链接滚动数组+dpdp[i][j][k] 表示第i行j列有k个1#include<iostream>using namespace std;const int mod=998244353;long long a[505][505];long long n,m,p0,q1;long long dp[2][505][505*2];int main(){ scanf("%lld%lld%lld%lld",&n,&m,&p0,&q1);.
2021-10-25 20:23:58
307
原创 C. Cube Problem 数学
题目链接题目大意:求多少组a,b,c 满足(a+b+c)^3=a^3+b^3+c^3+n题解:将上述等式化简得 n=3(a+b)(a+c)(b+c)#include<iostream>#define int long longusing namespace std;int n;int a[1000006];int cnt=0;signed main(){ scanf("%lld",&n); if(n%3) printf("0"); //当n不为3的倍数的时
2021-10-22 11:28:04
136
原创 CodeForceA. Weird Game
统计双方方得分当上面字符是 1 下方字符时 0 时,先手得分当上面字符是 0下方字符时 1时,后手得分当上面时1下面也是1时,判断这种情况的奇数偶数,奇数则先手多得1分,偶数则都双方得分一样(相当于都没得分)最佳策略: 先取上下都是1的位置,其次是取自己是1的位置,再其次是取己方为0对方为1的位置,最后取双方都是0的位置。看双方谁取得1多(数字可以排序,所以说哪个选手取的1多谁赢)#include<iostream>using namespace std;i...
2021-10-19 14:30:35
154
原创 CodeForce J. Jeopardy of Dropped Balls
粗略统计每一列有多少个除了2以外的数,当这一列全是2的时候直接输出k个球的输入存入数组会增大复杂度直接暴力写也可以过#include<iostream>using namespace std;int n,m,k;int a[1005][1005];int q;int d[1005]; bool flag;int x,y;int main(){ scanf("%d %d %d",&n,&m,&k); for(int i=1;i<=n.
2021-10-18 16:47:26
216
原创 1592B - Hemose Shopping
n>=2*x 时可以实现交换任意两个数字例如 n=5 x=25 4 3 2 1实现3与4的交换 成为 5 3 4 2 15 4 3 2 15 1 3 2 45 1 4 2 35 3 42 1当n<x*2时 n-x+1到x之间的元素没办法完成交换 先特判是否符合顺序#include<iostream>#include<algorithm>#define int long longusing namespace std;i...
2021-10-08 18:40:53
182
原创 codeforce 744 Ticks
#include<iostream>using namespace std;int n,m,k;char s[20][20];int t;bool vis[20][20];bool solve(int i,int j){ int ss=1; while(s[i-ss][j-ss]=='*'&&s[i-ss][j+ss]=='*'&&i-ss>=1&&j-ss>=1&&j+ss<=m){ ss.
2021-10-03 15:54:02
192
原创 洛谷P1331 海战
#include<iostream>#include<vector>using namespace std;int n,m;char s[2000][2000];int f[1000006];int x[4]={0,1,0,-1};int y[4]={1,0,-1,0};int ans=0;bool vis[1000006];bool flag;int root(int x){ if(x!=f[x]) f[x]=root(f[x]); return f[x.
2021-10-03 14:32:51
133
原创 Diameter of Graph
#include<iostream>using namespace std;int t;long long n,m,k,p,x;bool solve(){ if(n==1){ if(m>0||k-1<1) return false; else return true; } else{ if(n-1<=m){ if(m==n*(n-1)/2){ if(k-1>1) return true; else return fals.
2021-10-02 11:53:17
427
原创 Codeforce Productive Meeting
#include<iostream>#include<queue>using namespace std;typedef pair<int,int> P;int t;int n;long long ans=0;priority_queue<P>a;struct T{ int x,y; }an[200005];int cnt=0;int main(){ cin>>t; while(t--){ ans=0; cin.
2021-10-01 14:45:51
103
原创 Codeforce 743 Swaps
#include<iostream>#include<algorithm>using namespace std;int n, a[200005], b[200005];int t;void solve(){ scanf("%d", &n); for(int i=1;i<=n;i++) scanf("%d", &a[i]); for(int i=1;i<=n;i++) { scanf("%d",&b[i]); if(i.
2021-09-30 13:41:29
115
原创 2021-09-29 CF Slay the Dragon
#include<iostream>#include<algorithm>#define endl '\n'using namespace std;long long n,m;struct T{ long long x,y;}d[200005];long long a[200005];long long sum=0;int main(){ scanf("%lld",&n); for(int i=1;i<=n;i++) scanf("%lld".
2021-09-29 16:03:52
149
原创 D. Make a Power of Two
题目链接:https://codeforces.com/contest/1560/problem/D题意:找出将数字转换为2的任意次幂的最小操作次数操作一: 删除任意一个数字操作二: 在当前数字最右边添加一个数字可以任意选择操作一与操作二题解: 暴力对比每一个2的幂次,取最小操作次数。代码#include<bits/stdc++.h>using namespace std;int t;long long f(string n,string s){ lo.
2021-09-02 16:03:38
93
原创 Codeforces Round #735 (Div. 2) C. Mikasa
#include<bits/stdc++.h>using namespace std;int a[49];int b[49];int ans[49];int cnt1=0,cnt2=0;int main() { int t; cin >> t; while (t--) { cnt1=0; cnt2=0; int n, m; cin >> n >> m; m++; for(int i=0;i&l
2021-08-02 18:48:56
101
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人