训练情况
赛后反思
据说是临时准备的,今年好像没啥乐子题,除了两道猜猜题
A题
构造一个字符串使得 jiaran
子串至少出现 114514
次,直接输出 114514
次 jiaran
点击查看代码
#include <bits/stdc++.h>
// #define int long long
#define endl '\n'using namespace std;void solve(){for(int i = 1;i<=114514;i++) cout<<"jiaran";
}signed main(){// int T; cin>>T; while(T--)solve();return 0;
}
B题
判断回文子串个数,直接枚举子串即可
点击查看代码
#include <bits/stdc++.h>
// #define int long long
#define endl '\n'using namespace std;void solve(){string s = "((()))";int n = s.size();int ans = 0;for(int i = 2;i<=n;i++){for(int j = 0;j+i-1<n;j++){string t = s.substr(j,i);string tt = t ;reverse(t.begin(),t.end());if(t == tt) ans++;}}cout<<ans<<endl;
}signed main(){// int T; cin>>T; while(T--)solve();return 0;
}
C题
今天是除夕
点击查看代码
#include <bits/stdc++.h>
// #define int long long
#define endl '\n'using namespace std;void solve(){cout<<"除夕";
}signed main(){// int T; cin>>T; while(T--)solve();return 0;
}
D题
简单的时间问题,全部化成秒去减,注意一下特判 24:00:00 要输出 00:00:00
点击查看代码
#include <bits/stdc++.h>
// #define int long long
#define endl '\n'using namespace std;void solve(){int h,m;scanf("%d:%d",&h,&m);int now = 24*60*60 - h*60 - m;if(now == 24*60*60) now = 0;printf("%.2d:%.2d:%.2d",now/3600,now%3600/60,now%60);
}signed main(){// int T; cin>>T; while(T--)solve();return 0;
}
E题
首先 1 肯定可以被整除,八进制转十进制需要乘 \(8^x\),所以 2
结尾的加上 8
的倍数可以被 2
整除,结尾是 4
的要被整除需要满足后两位能被 4
整除,显然加上 8
的倍数都满足,故输出 1 2 4
点击查看代码
#include <bits/stdc++.h>
// #define int long long
#define endl '\n'using namespace std;void solve(){cout<<"1 2 4";
}signed main(){// int T; cin>>T; while(T--)solve();return 0;
}
F题
考公题,略
点击查看代码
#include <bits/stdc++.h>
// #define int long long
#define endl '\n'using namespace std;void solve(){cout<<"幽默";
}signed main(){// int T; cin>>T; while(T--)solve();return 0;
}
I题
构造一个逆序对小于 \(m\) 的数列,我们直接构造逆序对为 \(0\) 的数列即可,直接输出 1~n
点击查看代码
#include <bits/stdc++.h>
// #define int long long
#define endl '\n'using namespace std;void solve(){int n,m; cin>>n>>m;for(int i = 1;i<=n;i++) cout<<i<<" ";
}signed main(){// int T; cin>>T; while(T--)solve();return 0;
}
J题
众所周知,python的图标有点像蛇
点击查看代码
#include <bits/stdc++.h>
// #define int long long
#define endl '\n'using namespace std;void solve(){cout<<"python";
}signed main(){// int T; cin>>T; while(T--)solve();return 0;
}