【真题研究】春季测试 2023
T1.涂色游戏(paint)#
可以按照题意模拟,每一次暴力对于每一行列染色,时间复杂度
因为颜色可以覆盖,某一格的颜色往往取决于最后一次被染到的颜色。
于是我们采用打标记的方式。每一次染色(行或列)就在当前行列打标记,记操作时间戳
最后输出答案时枚举每一格,比较当前行列的时间戳
时间复杂度
点击查看代码
#include<bits/stdc++.h>
#define int long long
#define rint register int
#define For(i,l,r) for(rint i=l;i<=r;++i)
#define FOR(i,r,l) for(rint i=r;i>=l;--i)
using namespace std;
inline int read() {
rint x=0,f=1;char ch=getchar();
while(ch<'0'||ch>'9'){if (ch=='-') f=-1;ch=getchar();}
while(ch>='0'&&ch<='9'){x=(x<<1)+(x<<3)+(ch^48);ch=getchar();}
return x*f;
}
const int N = 1e6 + 5;
struct Node {
int id, c;
} Ansh[N], Ansl[N];
int n, m, T, q;
void init() {
For(i,1,n) {
For(j,1,m) {
Ansh[i] = (Node) {0, 0};
Ansl[j] = (Node) {0, 0};
}
}
}
signed main() {
T = read();
while(T--) {
n = read(), m = read(), q = read();
init();
For(l,1,q) {
int op = read(), x = read(), c = read();
if(op == 0) {
Ansh[x] = (Node) {l, c};
} else {
Ansl[x] = (Node) {l, c};
}
}
For(i,1,n) {
For(j,1,m) {
if(j != m) {
if(Ansh[i].id > Ansl[j].id) {
cout << Ansh[i].c << ' ';
} else {
cout << Ansl[j].c << ' ';
}
}
else {
if(Ansh[i].id > Ansl[j].id) {
cout << Ansh[i].c;
} else {
cout << Ansl[j].c;
}
}
}
cout << endl;
}
}
return 0;
}
T2.幂次(power)#
答案显然就是
注意到,若
枚举底数
这样时间复杂度
相当于在
已知所有
总时间复杂度还是
点击查看代码
#include<bits/stdc++.h>
#define int long long
#define rint register int
#define For(i,l,r) for(rint i=l;i<=r;++i)
#define FOR(i,r,l) for(rint i=r;i>=l;--i)
using namespace std;
int n, k, ans, und;
map<int, bool> vis;
int qpow(int a, int b) {
int res = 1;
for (; b; b >>= 1, a = a * a) {
if(b & 1) res = res * a;
}
return res;
}
signed main() {
cin >> n >> k;
if(k == 1) cout << n << '\n';
else if(k >= 2){
for (int i = 2; i * i * i <= n; ++i) {
for (int j = i * i, kk = 2; ; ) {
if(j > n/i) break;
j *= i, kk++;
if(kk < k) continue;
if(vis[j]) continue;
vis[j] = 1;
ans++;
if((int)sqrtl(j)*sqrtl(j) == j) und++;
}
}
if(k >= 3) cout << ans+1 << '\n';
else cout << (int)sqrtl(n) + ans - und << '\n';
}
return 0;
}
作者:Daniel-yao
出处:https://www.cnblogs.com/Daniel-yao/p/18447240
版权:本作品采用「署名-非商业性使用-相同方式共享 4.0 国际」许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】