Educational Codeforces Round 80 (Rated for Div. 2)
A
大意:寻找x使得等式<=n,若满足情况输出YES否则NO
解法:纯数学题,先构造函数f(x)然后寻找f(x)取得最小值的情况 具体情况如下/瞎猜,纯暴力,猜一个区间进行暴力此题猜 √d <-对照上下文
收获:向上取整和向下取整的方法和四舍五入的方法
2020-02-09
取整函数用于浮点数注意进行强制转换
题解:
#include<bits/stdc++.h> using namespace std; int main() { int t; cin>>t; while(t--){ int n,d; cin>>n>>d; double q=sqrt(d)-1;q=q+1+d/(q+1); int x=ceil(q); if(x-1<=n||d<=n) cout<<"YES"<<endl; else cout<<"NO"<<endl; } return 0; }
B
大意:求共有多少个满足题意的数
解法:数学题,进行化简,发现当满足b全是9的时候符合题意
收获:化简公式取长度时候可以用到log10来计算len
题解:
#include<bits/stdc++.h> typedef long long ll; using namespace std; int main() { ios_base::sync_with_stdio(0);cin.tie(0),cout.tie(0); int t; cin>>t; while(t--){ ll a,b; cin>>a>>b; int len=log10(b+1);; cout<<len*a<<endl; } return 0; }
C
大意:构造不降序数组a,一个不升序数组b,求共有多少种可能
解法:组合数学阶乘-未懂