Строки: Напишите программу 5

Messages
1,701
Reaction score
288
Website
tehadm.ru
Дается строка. Нужно удалить все символы, которые встречаются более одного раза и вывести получившуюся строку

Sample Input:
zaabcbd

Sample Output:
zcd
 
C-like:
package main

import (
    "fmt"
    "strings"
)

func main() {
    var input string
    fmt.Scan(&input)
    output := removeDuplicates(input)

    fmt.Println(output)
}

func removeDuplicates(input string) string {
    output := ""
    for _, char := range input {
        if strings.Count(input, string(char)) == 1 {
            output += string(char)
        }
    }
    return output
}
 
C-like:
package main

import (
    "fmt"
    "strings"
)

func main() {
    var a string
    fmt.Scan(&a)
    for i:=range a{
        if strings.Count(a, string(a[i]))==1{
            fmt.Print(string(a[i]))
        }
    }
}

Этот код использует цикл for range для прохода по элементам a, которое предполагаем, что это строка (по типу []rune).

Для каждого элемента i в a код выполняет следующее:
  1. Проверяет, сколько раз встречается символ, соответствующий a[i], в исходной строке a.
  2. Если этот символ встречается в строке только один раз (условие strings.Count(a, string(a[i])) == 1), то он выводится в стандартный вывод (выводит string(a[i]) с помощью fmt.Print).
Таким образом, этот код выводит на экран все символы строки a, которые встречаются только один раз.
 
Last edited:
Back
Top