Hướng dẫn extract numbers from a jumbled string python - trích xuất các số từ một chuỗi python lộn xộn

Cải thiện bài viết

Lưu bài viết

Cho một chuỗi s có độ dài n là biểu diễn tiếng Anh của bất kỳ số chữ số nào trong phạm vi [0 - 9] ở định dạng lộn xộn. Nhiệm vụ là tìm các chữ số từ đại diện này. & Nbsp; Lưu ý: In chữ số theo bất kỳ thứ tự nàoS of length N which is the English representation of any number of digits in the range [0 – 9] in jumbled format. The task is to find the digits from this representation. 
Note: Print digits in any order

Ví dụ

Đầu vào: S = Đầu ra Owoftnuoer đầu ra: 124Explanation: Các chữ số ở đây là dạng lộn xộn của một, hai và bốn. Do đó, đầu ra cần thiết có thể là 124 hoặc 421 hoặc 214, v.v.S = “owoftnuoer”
Output: 124
Explanation: The digits here are jumbled form of one, two and four. Therefore, the required output can be 124 or 421 or 214 etc.

Đầu vào: S = Đầu ra của Zesxrionezoreo: 0016: S = “zesxrionezoreo”
Output: 0016

Cách tiếp cận: Vấn đề này có thể được giải quyết dễ dàng bằng cách quan sát một thực tế thú vị rằng tất cả các chữ số thậm chí có ít nhất một ký tự không có trong bất kỳ chuỗi nào khác, trong khi tất cả các chữ số lẻ don don:This problem can be solved easily by observing an interesting fact that all even digits have at least one character not present in any other strings, while all odd digits don’t:

Các chữ số sau có các chữ cái duy nhất:

  • Zero: Chỉ chữ số có zOnly digit with z
  • Hai: Chỉ chữ số có WOnly digit with w
  • Bốn: Chỉ chữ số với bạn Only digit with u
  • Sáu: Chỉ chữ số với x Only digit with x
  • Tám: Chỉ có chữ số với GOnly digit with g

Đối với các chữ số lẻ, mỗi chữ cái cũng xuất hiện trong một số chữ số khác. Các chữ số lẻ trong các từ là {một, ba, năm, bảy, chín}. Thực hiện theo các bước được đưa ra dưới đây để giải quyết vấn đề

  • Tạo một vectơ của các chuỗi Num sẽ giữ các số bằng chữ cái tiếng Anh từ 0 đến 9 và một vectơ số nguyên, đếm [] có kích thước 10 và cũng tạo ra một chuỗi câu trả lời ANS để hiển thị các số.num that will hold the numbers in English letter from 0 to 9 and a vector of integers, count[] of size 10 and also create an answer string ans to display the numbers.
  • Bây giờ, qua chuỗi đã cho từ i = 0 đến n-1.i = 0 to N-1.
  • Nếu s [i] = ‘z, tăng số lượng [0] lên 1.s[i] = ‘z’, increase count[0] by 1.
  • Nếu s [i] = ‘w, tăng số lượng [2] lên 1.s[i] = ‘w’, increase count[2] by 1.
  • Nếu s [i] = ’g, tăng số lượng [8] lên 1.s[i] = ‘g’, increase count[8] by 1.
  • Nếu s [i] = ‘x, tăng số lượng [6] lên 1.s[i] = ‘x’, increase count[6] by 1.
  • Nếu S [i] = ‘V, tăng số lượng [5] lên 1.s[i] = ‘v’, increase count[5] by 1.
  • Nếu s [i] = ‘o, tăng số lượng [1] lên 1.s[i] = ‘o’, increase count[1] by 1.
  • Nếu s [i] = ‘s, tăng số lượng [7] lên 1.s[i] = ‘s’, increase count[7] by 1.
  • Nếu s [i] = ’f, tăng số lượng [4] lên 1. s[i] = ‘f’, increase count[4] by 1.
  • Nếu S [i] = ‘H, tăng số lượng [3] lên 1.s[i] = ‘h’, increase count[3] by 1.
  • Nếu s [i] = ‘i, tăng số lượng [9] lên 1.s[i] = ‘i’, increase count[9] by 1.
  • Bây giờ, hãy cập nhật các yếu tố của vectơ như hình dưới đây:
  • Đếm [7] = Đếm [7] - Đếm [6]..
  • Đếm [5] = Đếm [5] - Đếm [7]..
  • Đếm [4] = Đếm [4] - Đếm [5]..
  • Đếm [1] = Đếm [1] - [Đếm [2] + Đếm [4] + Đếm [0]]..
  • Đếm [3] = Đếm [3] - Đếm [8]..
  • Đếm [9] = Đếm [9] - [Đếm [5] + Đếm [6] + Đếm [8]]..
  • Bây giờ, đi qua vectơ từ 0 đến 9 và ký tự [i + ‘0,] vào ANS, đếm [i] lần. 0 to 9 and append character [i + ‘0’] to ans, count[i] times.
  • Cuối cùng, in ANS như câu trả lời cần thiết.ans as the required answer.

Dưới đây là việc thực hiện phương pháp trên:

C++

#include

using namespace std;

string finddigits[string s]

{

    string num[]

        = { using0using1using2using1using4using5

using6using7using1using9using1namespace1using5

using6namespace4using1namespace6using1____28using1std;0

    std;3std;4std;5

    std;7std;8std;9

    std;4 string finddigits[string s]2

    string finddigits[string s]4 string finddigits[string s]5std;4 string finddigits[string s]7

        string finddigits[string s]9 {0{1{2

using6{4

        string finddigits[string s]9 {0{8{2

using6    1

        string finddigits[string s]9 {0    5{2

using6    8

        string finddigits[string s]9 {0__72

using6string num[]5

        string finddigits[string s]9 {0string num[]9{2

using6        2

        string finddigits[string s]9 {0        6{2

using6        9

        string finddigits[string s]9 {0= { 3{2

using6= { 6

        string finddigits[string s]9 {0using00{2

using6using03

        string finddigits[string s]9 {0using07{2

using6using10

        string finddigits[string s]9 {0using14{2

using6using17

    using19

    using21

    using23

    using25

    using27

    using29

    using31

    string finddigits[string s]4 string finddigits[string s]5std;4 using36

        string finddigits[string s]4 string finddigits[string s]5std;4 using41

using6using43using44using45using46using47

        using19

    using19

    using53 using54

using19

std;4 using57

{

    using60using61std;9

    using64

using19

Java

using66 using67

using68 using69

using70using71 using72

using70{

    using76

using77= { using0using1using2using1using4using84using7using1using9using5

Các

    std;4namespace022203 std;4namespace05namespace06namespace07

    namespace09std;8std;9

    std;4 namespace14

    string finddigits[string s]4 string finddigits[string s]5std;4 namespace19namespace20namespace21

using77string finddigits[string s]9 namespace24{1{2

        namespace28namespace20namespace30

using77string finddigits[string s]9 namespace24{8{2

        namespace28namespace38namespace30

using77string finddigits[string s]9 namespace24    5{2

        namespace28namespace47namespace30

using77string finddigits[string s]9 namespace24string num[]2{2

        namespace28namespace56namespace30

using77string finddigits[string s]9 namespace24string num[]9{2

        namespace28namespace65namespace30

using77string finddigits[string s]9 namespace24        6{2

        namespace28namespace74namespace30

using77string finddigits[string s]9 namespace24= { 3{2

        namespace28namespace83namespace30

using77string finddigits[string s]9 namespace24using00{2

        namespace28namespace92namespace30

using77string finddigits[string s]9 namespace24using07{2

        namespace28std;01namespace30

using77string finddigits[string s]9 namespace24using14{2

        namespace28std;10namespace30

    using19

    namespace28namespace83std;17namespace56namespace07

    namespace28namespace65std;17namespace83namespace07

    namespace28namespace92std;17namespace65namespace07

    namespace28namespace74std;35namespace38std;37namespace92std;37namespace20std;41

    namespace28std;01std;17namespace47namespace07

    namespace28std;10std;35namespace65std;37namespace56std;37namespace47std;41

    string finddigits[string s]4 string finddigits[string s]5std;4 namespace19namespace20std;64namespace06std;66

using77string finddigits[string s]4 string finddigits[string s]5std;4 std;71namespace20std;73

        using43using44using45using46using47

using777____119

    using19

    using53 using54

using70using19

using70std;90 using71 std;92 std;93

using70{

    std;97using61std;9

    string finddigits[string s]01

using70using19

using19

Python3

string finddigits[string s]05 string finddigits[string s]06

    string finddigits[string s]08string finddigits[string s]09 string finddigits[string s]10using0using1____12using1using4using1using7using5

Các

using6namespace8using1std;0string finddigits[string s]32

    string finddigits[string s]34string finddigits[string s]09 namespace05namespace20string finddigits[string s]38string finddigits[string s]39 string finddigits[string s]5namespace06{2

    string finddigits[string s]44string finddigits[string s]09 std;8

    string finddigits[string s]48string finddigits[string s]09 string finddigits[string s]50string finddigits[string s]51

    string finddigits[string s]4 string finddigits[string s]54string finddigits[string s]55 string finddigits[string s]56string finddigits[string s]57

        string finddigits[string s]9 string finddigits[string s]60____409string finddigits[string s]09 {1string finddigits[string s]64

using6namespace28namespace20string finddigits[string s]38string finddigits[string s]69string finddigits[string s]09 namespace74

        string finddigits[string s]9 string finddigits[string s]60____409string finddigits[string s]09 {8string finddigits[string s]64

using6namespace28namespace38string finddigits[string s]38string finddigits[string s]69string finddigits[string s]09 namespace74

        string finddigits[string s]9 string finddigits[string s]60____409string finddigits[string s]09     5string finddigits[string s]64

using6namespace28namespace47string finddigits[string s]38string finddigits[string s]69string finddigits[string s]09 namespace74

using6namespace28namespace56string finddigits[string s]38string finddigits[string s]69string finddigits[string s]09 namespace74

        string finddigits[string s]9 string finddigits[string s]60____409string finddigits[string s]09 string num[]9string finddigits[string s]64

using6namespace28namespace65string finddigits[string s]38string finddigits[string s]69string finddigits[string s]09 namespace74

        string finddigits[string s]9 string finddigits[string s]60____409string finddigits[string s]09         6string finddigits[string s]64

using6namespace28namespace74string finddigits[string s]38string finddigits[string s]69string finddigits[string s]09 namespace74

        string finddigits[string s]9 string finddigits[string s]60____409string finddigits[string s]09 = { 3string finddigits[string s]64

using6namespace28namespace83string finddigits[string s]38string finddigits[string s]69string finddigits[string s]09 namespace74

        string finddigits[string s]9 string finddigits[string s]60____409string finddigits[string s]09 using00string finddigits[string s]64

Các

using6namespace28std;01string finddigits[string s]38string finddigits[string s]69string finddigits[string s]09 namespace74

        string finddigits[string s]9 string finddigits[string s]60____409string finddigits[string s]09 using14string finddigits[string s]64

using6namespace28std;10string finddigits[string s]38string finddigits[string s]69string finddigits[string s]09 namespace74

    namespace28namespace83string finddigits[string s]38    022

    namespace28namespace65____438    022

    namespace28namespace92 ____438    022

    namespace28namespace74string finddigits[string s]38    022

    namespace28std;01string finddigits[string s]38    022

    namespace28std;10____438    022

    string finddigits[string s]4 string finddigits[string s]54string finddigits[string s]55 string finddigits[string s]56string finddigits[string s]5namespace06string finddigits[string s]64

        string finddigits[string s]4     78string finddigits[string s]55 string finddigits[string s]56    81

Các

    using53     95

string finddigits[string s]9     97string finddigits[string s]09string finddigits[string s]09 string num[]00string num[]01

    string num[]03string finddigits[string s]09 using61

    string num[]07string num[]08

C#

using string num[]10

std;90 using68 string num[]13

{

using70using71 string num[]17 string num[]18string num[]17 string num[]20

using70{

    std;4namespace022203 std;4string num[]28

    string num[]17 string num[]31std;8std;9

    std;4 string num[]36

    string finddigits[string s]4 string finddigits[string s]5std;4 string finddigits[string s]7

using77string finddigits[string s]9 {0{1{2

        {4

using77string finddigits[string s]9 {0{8{2

            1

using77string finddigits[string s]9 {0    5{2

            8

using77string finddigits[string s]9 {0__72

        string num[]5

using77string finddigits[string s]9 {0string num[]9{2

                2

using77string finddigits[string s]9 {0        6{2

                9

using77string finddigits[string s]9 {0= { 3{2

        = { 6

using77string finddigits[string s]9 {0using00{2

        using03

using77string finddigits[string s]9 {0using07{2

        using10

using77string finddigits[string s]9 {0using14{2

        using17

    using19

    using21

    using23

    using25

    using27

    using29

    using31

    string finddigits[string s]4 string finddigits[string s]5std;4 using36

using77string finddigits[string s]4 string finddigits[string s]5std;4 using41

        using43using44using45using46using47

using77using19

    using19

    using53 using54

using70using19

using70using71 std;90 std;92         55

using70{

    string num[]17         60using61std;9

            64

using70using19

using19

JavaScript

        68

        69         70

{

            73using0using1using2using1using4using5

using6using7using1using9using1namespace1using5

using6namespace4using1namespace6using1____28using1std;0

            97namespace03         99

    = { 01std;8std;9

    = { 05

    string finddigits[string s]4 = { 08

        string finddigits[string s]9 {0{1{2

using6{4

        string finddigits[string s]9 {0{8{2

using6    1

        string finddigits[string s]9 {0    5{2

using6    8

        string finddigits[string s]9 {0__72

using6string num[]5

        string finddigits[string s]9 {0string num[]9{2

using6        2

        string finddigits[string s]9 {0        6{2

using6        9

        string finddigits[string s]9 {0= { 3{2

using6= { 6

        string finddigits[string s]9 {0using00{2

using6using03

        string finddigits[string s]9 {0using07{2

using6using10

        string finddigits[string s]9 {0using14{2

using6using17

    using19

    using21

    using23

    using25

    using27

    using29

    using31

    string finddigits[string s]4 = { 95

        string finddigits[string s]4 = { 98

using6using000

        using19

    using19

    using53 using54

using19

using009using61std;9

using012using013using47

using015

using70using71 std;90 std;92         55 O[N] where N is the length of the string
Auxiliary Space: O[N]


Bài Viết Liên Quan

Chủ Đề