传送门
赛后反思:B. 用到除法需要考虑是否会卡除法的向下取整 能走贪心模拟那就走贪心模拟 普通的贪心还是练少了
C.思想搞错吓自己 应该分析数据范围的 cf通常都是思维题 不要动不动就搞什么算法
(具体注释看代码)A题 (队友推公式 我做工具人)
直接公式走
signed main() { ll t; ///scanf("%d",&t); cin>>t; ll n,m,x; while(t -- ) { // scanf("%d%d%d",&n,&m,&x); cin>>n>>m>>x; ll ans = 0; ll temp =x/n; if(x%n) ans = (ll)(temp +1+(x%n -1 )*m); else ans = (ll)((n-1)*m+temp); cout<<ans<<endl; } return 0; }B. Partial Replacement
本来以为还是公式题就一直走 虽然也考虑过贪心走for 但是还是懒 而且推公式貌似有可行性
#include using namespace std; const int N = 400; char s[N]; typedef unsigned long long ll; int main() { int t; cin>>t; /// int ans = 0; while(t -- ) { int n , k ; cin>>n>>k; for(int i=1;i<=n;i++) cin>>s[i]; int sr =0 ; int ed =0 ; /// ++ans; for(int i=1;i<=n;i++) { if(s[i] =='*'&&!sr) sr = i; if(s[i] =='*') ed = i; } int d = ed -sr; if(ed == sr) cout<<1<<endl; else { int temp = d/k; if(d%k) temp ++; cout<<temp+1<<endl; } } /// cout< return 0; }关注打赏