其他分享
首页 > 其他分享> > ABC266 做题笔记

ABC266 做题笔记

作者:互联网

A

Problem

给定一个字符串,输出正中间那个字符。

link->https://atcoder.jp/contests/abc266/tasks/abc266_a

Solution

简单题。

Code

点击查看代码
#include<bits/stdc++.h>
#define INF 0x7fffffff
#define inf 0x3f3f3f3f
#define inf2 0x3f3f3f3f3f3f3f3f
//#define int long long
#define PII pair<int,int>
#define _for(a,b,c) for(int a=b;a<=c;++a)
#define _rep(a,b,c) for(int a=b;a>=c;--a)
#define cl(f,x) memset(f,x,sizeof(f))
using namespace std;

signed main() {
	string s;
	cin>>s;
	cout<<s[(s.size()-1)/2];
	return 0;
}

B

Problem

给定数 \(n\),求数 \(x\) 满足 \(x\in[0,998244353),998244353\mid(n-x)\)。

link->https://atcoder.jp/contests/abc266/tasks/abc266_b

Solution

根据模运算的分配率,有 \((n\bmod 998244353-x)\bmod 998244353=0\),令 \(n\bmod 998244353-x\) 为 \(0\) 即可。

Code

点击查看代码
#include<bits/stdc++.h>
#define INF 0x7fffffff
#define inf 0x3f3f3f3f
#define inf2 0x3f3f3f3f3f3f3f3f
#define int long long
#define PII pair<int,int>
#define _for(a,b,c) for(int a=b;a<=c;++a)
#define _rep(a,b,c) for(int a=b;a>=c;--a)
#define cl(f,x) memset(f,x,sizeof(f))
using namespace std;
const int MOD=998244353;
signed main() {
	int n;
	scanf("%lld",&n);
	n=(n%MOD+MOD)%MOD;
	printf("%lld\n",n);
	return 0;
}

C

Problem

给定一个四边形,判断它的凹凸性。

link->https://atcoder.jp/contests/abc266/tasks/abc266_c

Solution

一个四边形如果是凸的,无非内部存在这样的形状:

标签:abc266,int,笔记,ABC266,long,MOD,998244353,define
来源: https://www.cnblogs.com/lsj2009/p/16637013.html