[CodeForces-1225A] Forgetting Things 【构造】
2024-08-31 02:48:05
[CodeForces-1225A] Forgetting Things 【构造】
标签: 题解 codeforces题解 构造
题目描述
Time limit
2000 ms
Memory limit
524288 kB
Source
Technocup 2020 - Elimination Round 2
Tags
math *900
Site
https://codeforces.com/problemset/problem/1225/a
题面
Example
Input1
1 2
Output1
199 200
Input2
4 4
Output2
412 413
Input3
5 7
Output3
-1
Input4
6 2
Output4
-1
题目大意
给定\(d_a, d_b\)作为两个数的最高位上(左起第一位)的数,问能不能找到这样的\(a, b\),使得\(a + 1 = b\)。如果不能输出-1。
例如,
给定1 2,我们很容易找到199 + 1 = 200,那么我们就输出199 200。
给定6 2,我们无法找到\(a, b\)满足要求,那么我们就输出-1。
解析
简单构造。
构造答案的方法应该有多种。
分情况讨论一下,
如果给定的两个数相等,那么输出\(d_a \times 10 \;\;d_b \times 10 + 1\)。
如果给定的\(d_a + 1 = d_b\),那么直接输出\(d_a \;\; d_b\)即可。
一种特殊情况是,如果给定的\(d_a = 9,d_b = 1\),那么输出\(9, 10\)。
其他的情况,无解,就输出\(-1\)。
通过代码
/*
Status
Accepted
Time
31ms
Memory
12kB
Length
309
Lang
GNU G++11 5.1.0
RemoteRunId
67064706
*/
#include <bits/stdc++.h>
using namespace std;
int main()
{
int x, y;
cin >> x >> y;
if(x == y)
cout << x * 10 << " " << y * 10 + 1;
else if(x + 1 == y)
cout << x << " " << y;
else if(x == 9 && y == 1)
cout << "9 10";
else
cout << -1;
return 0;
}
最新文章
- 高性能异步图片加载器的JS库:lazysizes
- [moka同学笔记]Yii2 数据操作Query Builder 2
- 代码整洁--使用CodeMaid自动程序排版
- ASimpleCache使用感受
- redis 学习指南
- 经典71道Android试题及答案
- Javascript 里的 in
- Mysql密码恢复
- 我的MYSQL学习心得
- <;Chapter 2>;2-2-2.开发Java应用(Developing a Java App)
- Python入门100例题
- dsadm-dsconf数据导入导出
- 面向对象三大特征之封装与static——(Java学习笔记四)
- 通过qsort(void * lineptr[], int left, int rifht, int (*comp)(void *, void *))解读指针函数和void指针
- Swing-JPopupMenu弹出菜单用法-入门
- FATE
- Docker在Linux上运行NetCore系列(四)使用私有Nuget与多个本地包引用运行ASPNetCore
- Generative Adversarial Nets[Improved GAN]
- Tomcat优化之容易集合经验
- 如何读取Linux键值,输入子系统,key,dev/input/event,dev/event,C语言键盘【转】
热门文章
- 【Vuejs】335-(超全) Vue 项目性能优化实践指南
- Linux-部署-Django
- 【JPA】注解@PostConstruct、@PreDestroy
- Wonder第一期3D引擎和编辑器线下培训班报名开始啦(免费学习)
- MyBatis结果集一对多映射
- 面试连环炮系列(九):为什么ConcurrentHashMap是线程安全的
- 现代&ldquo;十二要素应用&rdquo;与 Kubernetes
- javascript 获取function的所在文件,并读取代码文件
- Java连接MySQL数据库及简单的增删查改操作
- WebShell代码分析溯源(十一)