Предмет: Информатика,
автор: gamer001hid
Дана строка, содержащая последовательность слов,
разделенных пробелами. Напечатать порядковые номера тех слов, которые содержат повторяющиеся буквы. Если таких слов в строке нет, выдать «NO».
Ответы
Автор ответа:
0
#include <iostream>
#include <vector>
#include <set>
using namespace std;
void solve() {
string str, s;
getline(cin, str);
vector<string> a;
set<char> letters;
bool ok = false;
for(int i = 0; i <= str.length(); i++){
if(i == str.length() || str[i] == ' '){
if(ok)
a.push_back(s);
s.clear();
ok = false;
letters.clear();
}
else{
s += str[i];
ok |= (letters.find(str[i]) != letters.end());
letters.insert(str[i]);
}
}
if(a.empty())
cout << "NO";
else
for(auto &i: a) cout << i << " ";
}
int main(){
solve();
}
gamer001hid:
нужно сделать на c#
А раз нет, то добро пожаловать в работу программистом: Не понятно, что делает определенная строка - пылесосишь интернет. Желательно на английском. И так пока не поймешь
Похожие вопросы
Предмет: Английский язык,
автор: nutella123123
Предмет: Английский язык,
автор: udovichenkoolga80
Предмет: Русский язык,
автор: dianovanataly
Предмет: Биология,
автор: idaaskirka