Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.73/11: Рейтинг темы: голосов - 11, средняя оценка - 4.73
0 / 0 / 0
Регистрация: 05.02.2019
Сообщений: 20

Определить минимальное количество первых символов слов, по которым можно различить слова в строке

09.04.2019, 18:06. Показов 2206. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Строка состоит из нескольких слов, разделенных пробелом. Определить минимальное количество первых символов слов, по которым можно различить слова в строке.

Входные данные: abc5 abc0 abcde abcfg
Выходные данные: 4
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
09.04.2019, 18:06
Ответы с готовыми решениями:

Определить минимальное количество первых символов слов, по которым можно различить слова в строке
Строка состоит из нескольких слов, разделенных пробелом. Определить минимальное количество первых символов слов, по которым можно различить...

Определить минимальное количество первых символов слов, по которым можно различить слова в строке
Строка состоит из нескольких слов, разделенных пробелом. Определить минимальное количество первых символов слов, по которым можно различить...

Определить минимальное количество первых символов слов, по которым можно различить слова в строке
Задание 1 Строка состоит из нескольких слов, разделенных пробелом. Определить минимальное количество первых символов слов, по которым...

8
 Аватар для ArtemFM
746 / 493 / 285
Регистрация: 10.09.2015
Сообщений: 1,530
09.04.2019, 20:20
Лучший ответ Сообщение было отмечено ItProger как решение

Решение

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
import java.util.Scanner;
 
public class Task057 {
    public static void main(String[] args) {
        Scanner read = new Scanner(System.in);
        System.out.print("Input words separator space: ");
        String str = read.nextLine().trim();
        System.out.println("count: " + (countSymbol(str) + 1));
    }
 
    private static int countSymbol(String str) {
        int res = 0;
        if (str != null) {
            String[] words = str.split("\\s+");
            if (words.length > 0) {
                String first = words[0];
                boolean duplicate = true;
                for (int i = 0; i < first.length(); i++) {
                    for (int j = 1; j < words.length; j++) {
                        if (i >= words[j].length() || first.charAt(i) != words[j].charAt(i)) {
                            duplicate = false;
                            break;
                        }
                    }
                    if (duplicate) {
                        res++;
                    } else {
                        break;
                    }
                }
            }
        }
        return res;
    }
}
Добавлено через 33 секунды
output:

Java
1
2
3
4
Input words separator space: abc5 abc0 abcde abcfg
count: 4
 
Process finished with exit code 0
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
 Аватар для easybudda
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,973
10.04.2019, 00:46
ArtemFM, а должно бы быть 4
Code
1
2
3
[andrew@easybook string]$ java Task057.java 
Input words separator space: abcdef defabc deff
count: 1
0
 Аватар для ArtemFM
746 / 493 / 285
Регистрация: 10.09.2015
Сообщений: 1,530
10.04.2019, 15:02
easybudda, почему 4?
Тут другое задание. Сколько символов повторяется с начала у каждого из слов

Добавлено через 55 секунд
следовательно в твоём варианте все первые символы разные у каждого из слов и следовательно они различимы по первому символу

Добавлено через 1 минуту
Цитата Сообщение от ItProger Посмотреть сообщение
Входные данные: abc5 abc0 abcde abcfg
Выходные данные: 4
здесь у каждого слова повторяется по 3 символа: abc
а различымый 4-й
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
 Аватар для easybudda
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,973
10.04.2019, 16:10
ArtemFM, вопрос был
Цитата Сообщение от ItProger Посмотреть сообщение
Определить минимальное количество первых символов слов, по которым можно различить слова в строке.
то бишь минимальное количество символов, которые во всех словах не должны повторяться. На мою строку твой код выдал 1. А по первому символу второе слово от третьего не отличить.
0
 Аватар для ArtemFM
746 / 493 / 285
Регистрация: 10.09.2015
Сообщений: 1,530
10.04.2019, 16:16
easybudda,
есть 3 слова:
abcdef
defabc
deff

у 2-х совпадает d у третьего нет. Значит слова различимы по 1-му символу. Были бы все 3 на букву d, то по второму

Добавлено через 1 минуту
проще было бы задачу поставить так:
на каком символе слова различаются
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
 Аватар для easybudda
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,973
10.04.2019, 17:23
Цитата Сообщение от ArtemFM Посмотреть сообщение
Значит слова различимы по 1-му символу. Были бы все 3 на букву d, то по второму
Ну и чем второе слово от третьего отличается? Они же все различаться должны, а не первое от следующих отличаться.
Цитата Сообщение от ArtemFM Посмотреть сообщение
проще было бы задачу поставить так:
на каком символе слова различаются
Можно и так сказать.
0
 Аватар для ArtemFM
746 / 493 / 285
Регистрация: 10.09.2015
Сообщений: 1,530
10.04.2019, 17:39
easybudda,
как я понял задачу:
abcd
abce
abcf
тут каждое слово содержит в начале abc а различаться начинают с 4-го символа

abe
acd
agf
тут у всех первый символ одинаков (а), а различаются по втором

sd
ds
as
тут первый символ разный у всех (даже если у 2-х был бы одинаков, не важно), следовательно разлчимы по 1-му символу
0
528 / 263 / 70
Регистрация: 11.12.2016
Сообщений: 1,223
10.04.2019, 22:40
ArtemFM, тоже решил и так же как и у вас, те же "проблемы". Решал сложно радости в конце не приносит, но как "извращение" пойдет
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import java.util.Arrays;
import java.util.function.*;
import java.util.stream.*;
 
public class BorderEquals{
 
    public static void main(String[] args){
        System.out.println(numberOfEquals("asdf1 asdcvn asdfgc asdfgh asdfgh453"));
        System.out.println(numberOfEquals("12345q 123456 1234567 123457e 123456123456"));
        System.out.println(numberOfEquals("12345q 123456 1234567 1237e 123456123456"));
        System.out.println(numberOfEquals("abc5 abc0 abcde abcfg"));
        System.out.println(numberOfEquals("ab5 abc0 abcde abcfg"));        
    }
    public static long numberOfEquals(String str) {
        String[] a = Arrays.stream(str.split(" ")).distinct().toArray(String[]::new);
        Function<Integer,BiFunction<String,String,IntPredicate>> function = f 
                -> (s1,s2) 
                -> p 
                -> String.valueOf(s1.charAt(f)).equals(String.valueOf(s2.charAt(f)));
        return Stream.of(a).mapToLong(i -> (long) Stream.of(a)
                .mapToLong(j -> IntStream.range(0,i.length()).takeWhile(k -> function.apply(k).apply(i,j).test(k)).count())
                .min().getAsLong()).findAny().getAsLong() +1;
    }
}
Code
1
2
3
4
5
6
4
6
4
4
1
3
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
10.04.2019, 22:40
Помогаю со студенческими работами здесь

Определить минимальное количество первых символов слов, по которым можно различить слова в строке
Задание 1 Строка состоит из нескольких слов, разделенных пробелом. Определить минимальное количество первых символов слов, по которым можно...

Указать минимальное количество первых букв, по которым можно различить слова из заданного списка
В строке малыми латинскими буквами записаны слова, разделяющиеся запятыми. Первые буквы некоторых слов могут совпадать. Указать минимальное...

Найти минимальное количество первых букв, по которым можно различить слова из заданного набора
Задан массив слов. Написать программу, указывающую минимальное количество первых букв, по которым можно разли¬чить слова из заданного...

Указать минимальное количество первых букв, по которым можно различить слова из заданного набора
Указать минимальное количество первых букв, по которым можно различить слова из заданного набора(слова разделены пробелами) Вообщем,...

Строки. Определить минимальное количество первых символов, по которым можно различать слова с заданного текста.
Задача. Определить минимальное количество первых символов, по которым можно различать слова с заданного текста. Направьте, пожалуйста,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
SDL3 для Web (WebAssembly): Работа со звуком через SDL3_mixer
8Observer8 08.02.2026
Содержание блога Пошагово создадим проект для загрузки звукового файла и воспроизведения звука с помощью библиотеки SDL3_mixer. Звук будет воспроизводиться по клику мышки по холсту на Desktop и по. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru