Witam wszystkich userów forum :D
Mam problem z zadaniem z Potyczek Algorytmicznych z roku 2002 :D Zadanie to nosi tytuł "Imiona mrówek" - znajduje się pod http://main.edu.pl/user.phtml?op=showtask&task=z&con=PA2002 <-- tym linkiem :D
Zadanie nie jest chyba trudne prawda?:D
Mój pomysł na rozwiązanie tego zadania jest taki:
- Wczytuję dane :D,
- W pętli obliczam ilość liter każdego słowa,
- Jeśli jakaś litera powtarza się w słowie to jej nie liczę ( nie jestem pewien jeszcze jak to zaimplementować),
- Wyszukuję wyrazu, który będzie najdłuższy po modyfikacji ( punktu 3),
- Wypisuję wynik.
Nom i to by było tak więc teraz próbuję napisać kod.
#include <cstdio>
using namespace std;
const int ds = 20; // długość słowa.
int main()
{
int n,maxl=0,l=0; // zmienne n - ilość słów, maxl - najdłuższy wyraz, l - długość liter
char imie[ds]; // imie :D
// Wczytuję dane (1)
scanf("%d",&n);
for(int i=0;i<n;++i)
{
scanf("%s",&imie[ds]);
}
// punkt 2 obliczam ilość lliter w wyrazach no i na tym się gubię, bo jakieś dziwne wyniki podaje
for(int i=0;i<imie[ds];i++)
{
if((imie[i]>='a') && (imie[i]<='z')) ++l;
}
// Teraz spróbujmy odczytać ilość liter w słowie
for (int i=0;i<26;i++)
{
if (w[i]==max)
printf("%c",z[i]);
}
return 0;
}
Co robię źle w tym liczeniu liter i jaką macie propozycje na to, żeby ten program nie liczył liter które się powtarzają??:D