题目大意:给定两个数字 x 1 , x 2 x_1, x_2 x1,x2,以及参数 p 1 , p 2 p_1,p_2 p1,p2,表示在 x 1 , x 2 x_1,x_2 x1,x2后面加上 p 1 , p 2 p1_,p_2 p1,p2个 0 0 0。然后比较 a a a和 b b b的大小.
思路分析:首先统一数位,将两个数字化为相同位数的数字,然后根据后缀( 1 0 ( p 2 − p 1 ) 10^{(p_2 - p_1)} 10(p2−p1))分类讨论即可。
#include
#define int long long
using namespace std;
int get(int num, int cnt = 0){
while(num) cnt += 1, num /= 10;
return cnt;
}
inline void solve(){
int x1, p1; cin >> x1 >> p1;
int x2, p2; cin >> x2 >> p2;
int xp1 = get(x1), xp2 = get(x2);
if(xp1 > xp2) while(xp1 - xp2) xp1--, x2 *= 10, p2--;
if(xp2 > xp1) while(xp2 - xp1) xp2--, x1 *= 10, p1--;
int det = p2 - p1;
if(x1 > x2) puts((det > t;
while(t--) solve();
return 0;
}
B.Absent Remainder
题目大意:给定序列 { a 1 , a 2 , … , a n } \{a_1, a_2, \dots, a_n\} {a1,a2,…,an},序列内元素各不相同。要求构造 ⌊ n 2 ⌋ \lfloor \frac{n}{2} \rfloor ⌊2n⌋对 ( x , y ) (x, y) (x,y),满足 x ≠ y ∩ x m o d y ∉ { a i } x \neq y\ \cap\ x \mod y \notin \{a_i\} x=y ∩ xmody∈/{ai}。
找到序列的最小值作为 y y y,然后找 ⌊ n 2 ⌋ \lfloor \frac{n}{2} \rfloor ⌊2n⌋对元素作为 x x x即可。容易知道 a i m o d a m i n n < a m i n n a_i \mod a_{minn} < a_{minn} aimodaminn> n; for(int i = 1; i > a[i]; sort(a + 1, a + 1 + n); for(int i = 1; i
最近更新
- 深拷贝和浅拷贝的区别(重点)
- 【Vue】走进Vue框架世界
- 【云服务器】项目部署—搭建网站—vue电商后台管理系统
- 【React介绍】 一文带你深入React
- 【React】React组件实例的三大属性之state,props,refs(你学废了吗)
- 【脚手架VueCLI】从零开始,创建一个VUE项目
- 【React】深入理解React组件生命周期----图文详解(含代码)
- 【React】DOM的Diffing算法是什么?以及DOM中key的作用----经典面试题
- 【React】1_使用React脚手架创建项目步骤--------详解(含项目结构说明)
- 【React】2_如何使用react脚手架写一个简单的页面?