codeforces#277.5 C. Given Length and Sum of Digits
来源:互联网 发布:传淘宝工具怎么使用 编辑:程序博客网 时间:2024/06/07 21:52
C. Given Length and Sum of Digits...
time limit per test
1 secondmemory limit per test
256 megabytesinput
standard inputoutput
standard outputYou have a positive integer m and a non-negative integers. Your task is to find the smallest and the largest of the numbers that have lengthm and sum of digits s. The required numbers should be non-negative integers written in the decimal base without leading zeroes.
Input
The single line of the input contains a pair of integers m, s (1 ≤ m ≤ 100, 0 ≤ s ≤ 900) — the length and the sum of the digits of the required numbers.
Output
In the output print the pair of the required non-negative integer numbers — first the minimum possible number, then — the maximum possible number. If no numbers satisfying conditions required exist, print the pair of numbers "-1 -1" (without the quotes).
Sample test(s)
Input
2 15
Output
69 96
Input
3 0
Output
-1 -1
题意:要求出两个m位数,他们m位上数字的和为s,求出最小和最大的这样的数,如果不存在,就输出-1 -1
贪心的策略,希望数字最小,那么除了第m位,其他位尽可能为9,希望数字最大,那么尽量让前几位为9
#include<cstdio>#include<cstring>#include <iostream>#include<algorithm>using namespace std;int m,s;int main(){while(~scanf("%d%d",&m,&s)){ if((s<1&&m>1)||s>m*9) { cout<<-1<<" "<<-1<<endl; continue; } for(int i=m-1,k=s;i>=0;i--) { int j=max(0,k-9*i); if(j==0&&i==m-1&&k) j=1;//k!=0很关键,当数据为1 0时,若k=0则此时要输出0 cout<<j; k-=j; } cout<<" "; for(int i=m-1,k=s;i>=0;i--) { int j=min(9,k); cout<<j; k-=j; }}return 0;}
0 0
- codeforces#277.5 C. Given Length and Sum of Digits
- 【Codeforces】 489C Given Length and Sum of Digits
- CodeForces 489C Given Length and Sum of Digits...
- Codeforces 489C Given Length and Sum of Digits
- CodeForces-489C Given Length and Sum of Digits...
- Codeforces-489C-Given Length and Sum of Digits...
- Codeforces 489C. Given Length and Sum of Digits...(greedy)
- codeforces 489C Given Length and Sum of Digits...
- C. Given Length and Sum of Digits...
- Codeforces Round #277.5 (Div. 2) C. Given Length and Sum of Digits...
- Codeforces Round #277.5 (Div. 2)C——Given Length and Sum of Digits...
- Codeforces #277.5 (Div. 2) C. Given Length and Sum of Digits...(简单贪心)
- Codeforces Round #277.5 (Div. 2)---C. Given Length and Sum of Digits (贪心)
- Codeforces Round #277.5 (Div. 2) C Given Length and Sum of Digits...
- Codeforces - 277.5 (Div. 2)C - Given Length and Sum of Digits...(模拟 or dfs)
- Codeforces Round #277.5 (Div. 2) C. Given Length and Sum of Digits...
- Codeforces Round #277.5(Div. 2) C. Given Length and Sum of Digits...【贪心】
- Codeforces 489C - Given Length and Sum of Digits...(贪心)
- 自定义RatingBar适配问题
- ICP算法(Iterative Closest Point)及VTK实现
- java 日志系统
- socket通信相关
- Rabbit and Grass(杭电1849)(尼姆博弈)
- codeforces#277.5 C. Given Length and Sum of Digits
- git difftool 三方比较
- Meal WaitPerson and Chef
- Qt 操作QDomDocument对象修改节点
- 安装Oracle EBS12.2并升级到12.2.3
- php学习笔记(九)htmlspecialchars
- Java中枚举类型的使用
- 用c语言统计文件中某个汉字的个数
- 位操作及应用