Codeforces 584 A. Olesya and Rodion(Codeforces Round #324 (Div. 2))

简介:
A. Olesya and Rodion
time limit per test
1 second
memory limit per test
256 megabytes
input
standard input
output
standard output

Olesya loves numbers consisting of n digits, and Rodion only likes numbers that are divisible by t. Find some number that satisfies both of them.

Your task is: given the n and t print an integer strictly larger than zero consisting of n digits that is divisible by t. If such number doesn't exist, print  - 1.

Input

The single line contains two numbers, n and t (1 ≤ n ≤ 1002 ≤ t ≤ 10) — the length of the number and the number it should be divisible by.

Output

Print one such positive number without leading zeroes, — the answer to the problem, or  - 1, if such number doesn't exist. If there are multiple possible answers, you are allowed to print any of them.

Sample test(s)
input
3 2
output
712
题目大意:
给定两个数n和t,分别表示有 n 位数和能够被 t 整除,输出这样一个数有 n 位数,
而且还能被 t 整除的数;

解题思路:
分析一下,因为 t 的范围是 [2 , 10], 所以,只需要找到 t ,然后输出 n-1 个0就行了,
但是还要特殊判断 10 ,因为还有可能不被整除的时候

上代码:
#include <iostream>
#include <cstdio>
#include <cstring>
#include <cstdlib>
#include <cmath>
#include <vector>
#include <queue>
#include <algorithm>
#include <set>
using namespace std;

#define MM(a) memset(a,0,sizeof(a))
#define MM1(a) memset(a, false, sizeof(a))
typedef long long LL;
typedef unsigned long long ULL;
const int maxn = 1e3+5;
const int mod = 1000000007;
const double eps = 1e-7;
const double pi = 3.1415926;

int main()
{
    int n,t;
    while(cin>>n>>t)
    {
         if(t == 10)
         {
             if(n == 1)
                puts("-1");
             else
             {
                 cout<<'1';
                 for(int i=0; i<n-1; i++)
                    cout<<'0';
                 puts("");
             }
         }
         else
         {
             cout<<t;
             for(int i=0; i<n-1; i++)
                cout<<'0';
             puts("");
         }
    }
}


目录
相关文章
|
8月前
|
机器学习/深度学习 人工智能 移动开发
.Codeforces Round 883 (Div. 3)
Codeforces Round 883 (Div. 3)
|
6月前
Codeforces Round #192 (Div. 2) (329A)C.Purification
Codeforces Round #192 (Div. 2) (329A)C.Purification
20 0
|
6月前
|
人工智能 算法 BI
Codeforces Round #179 (Div. 2)A、B、C、D
我们每次加进来的点相当于k,首先需要进行一个双重循环找到k点和所有点之间的最短路径;然后就以k点位判断节点更新之前的k-1个点,时间复杂度降到O(n^3),而暴力解法每次都要进行floyd,时间复杂度为O(n^4);相比之下前述解法考虑到了floyd算法的性质,更好了运用了算法的内质。
30 0
|
7月前
Codeforces Round #742 (Div. 2)
Codeforces Round #742 (Div. 2)
27 0
|
11月前
|
人工智能
|
11月前
【CodeForces】Codeforces Round 857 (Div. 2) B
【CodeForces】Codeforces Round 857 (Div. 2) B
85 0
|
12月前
|
索引
Codeforces Round 817 (Div. 4)
Codeforces Round 817 (Div. 4)A~G题解
84 0
Codeforces Round #675 (Div. 2) A~D
Codeforces Round #675 (Div. 2) A~D
99 0
|
机器学习/深度学习