CF2193 Round 1079 (Div. 2)
个人题解
Nanami^2 Even in the rain.
2026年02月12日
预计阅读 3 分钟
542 字
A
注意到 非常小,不超过 100,那么直接枚举 ,检查 是否等于 即可。
#include<bits/stdc++.h>using namespace std;typedef long long ll;typedef unsigned long long ull;typedef pair<int,int> PII;#define MP make_pair#define fi first#define se second#define pb push_back#define eb emplace_back#define SET(a,b) memset(a,b,sizeof(a))#define CPY(a,b) memcpy(a,b,sizeof(b))#define rep(i,j,k) for(int i=(j);i<=(k);++i)#define per(i,j,k) for(int i=(j);i>=(k);--i)int read() { int a=0, f=1; char c=getchar(); while(!isdigit(c)) { if(c=='-') f=-1; c=getchar(); } while(isdigit(c)) a=a*10+c-'0', c=getchar(); return a*f;}int T, x;int d(int x) { int res = 0; while(x) { res += x % 10; x /= 10; } return res;}void solve() { cin >> x; int ans = 0; for(int i = x;i <= x + 100;i++) { if(x + d(i) == i) ans++; } cout << ans << endl;}signed main() { ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); cin >> T; while(T--) solve(); return 0;}B
因为是以每个点为中心向左右扩展,所以可以一眼看出来只要数字的相对位置符合原序列就行。
搞一个匹配算法显然过于繁琐,我们直接尝试对于每个 寻找对应 的 即可。
具体的,维护一个指针 从左往右扫,直到满足 ,如果到了 并且 还不等于 ,那么肯定相对顺序不对,直接NO。
#include<bits/stdc++.h>using namespace std;typedef long long ll;typedef unsigned long long ull;typedef pair<int,int> PII;#define MP make_pair#define fi first#define se second#define pb push_back#define eb emplace_back#define SET(a,b) memset(a,b,sizeof(a))#define CPY(a,b) memcpy(a,b,sizeof(b))#define rep(i,j,k) for(int i=(j);i<=(k);++i)#define per(i,j,k) for(int i=(j);i>=(k);--i)int read() { int a=0, f=1; char c=getchar(); while(!isdigit(c)) { if(c=='-') f=-1; c=getchar(); } while(isdigit(c)) a=a*10+c-'0', c=getchar(); return a*f;}const int N = 2e5 + 5;int T, n, p[N], a[N];void solve() { cin >> n; for(int i = 1;i <= n;i++) cin >> p[i]; for(int i = 1;i <= n;i++) cin >> a[i]; int pos = 1; for(int i = 1;i <= n;i++) { while(pos <= n && p[pos] != a[i]) { pos++; } if(pos > n && p[n] != a[i]) { cout << "NO" << endl; return; } } cout << "YES" << endl;}signed main() { ios::sync_with_stdio(0); cin.tie(0); cout.tie(0); cin >> T; while(T--) solve(); return 0;}C
觉得这篇文章怎么样?
点个赞,让更多人看到!

评论区