int *findwords(int n, char L[n][n], char *W[], int nw)
che prende in input una matrice L di nxn caratteri
alfabetici maiuscoli ('A','B',...,'Z') e un vettore W
di nw stringhe (ognuna delle quali contiene una parola in lettere maiuscole),
e ritorna un vettore C, allocato dinamicamente, che per ogni parola del
vettore W conta il numero di volte che appare nella matrice L
scritta in orizzontale o in verticale. Quindi, il vettore ritornato C
deve avere dimensione nw e per ogni i, C[i]
deve essere uguale al numero di volte che la parola W[i] appare
in L. Ad esempio, se n = 10, la matrice L e il vettore
W (nw = 4) sono:
matrice L vettore W
L B A R B A R B A C 0 "LUNA"
G U O V B L U N A L 1 "BARBA"
C H N N D U B N T R 2 "BARBE"
B A R A I N H T U V 3 "LUNARE"
W B A R B A I U V X
Y Z Z A V I L L M Y
N N T L R M M C C B
K J L U N A R E D G
J G H N N M I U T R
B B R A D O A N U L
allora la funzione ritorna il vettore C = [4, 3, 0, 1]. Qui sotto
le occorrenze delle parole di W in L
sono evidenziate in grassetto:
L B A R B A R B A C G U O V B L U N A L C H N N D U B N T R B A R A I N H T U V W B A R B A I U V X Y Z Z A V I L L M Y N N T L R M M C C B K J L U N A R E D G J G H N N M I U T R B B R A D O A N U L
int issmithnumber(long long n) che controlla
se n è un numero di Smith. Se lo è ritorna la
somma delle sue cifre, altrimenti ritorna 0.
Si chiarisce quindi di fare in modo che la funzione prodotta restituisca 0 in caso il numero in input n sia un numero primo.
k se è uguale alla concatenazione
di una o più ripetizioni di una stringa di lunghezza k. Ad esempio,
"tramtram" ha periodo 4 e anche periodo 8. Ovviamente, una qualsiasi
stringa ha almeno un periodo che è uguale alla sua lunghezza. Alcune hanno
anche altri periodi. La stringa abcabcabcabc ha periodi 3, 6 e 12.
int strperiod(char *str) che ritorna il più
piccolo periodo della stringa str. Ecco i periodi
ritornati dalla funzione su acune stringhe:
"periodo" 7 "AAAA" 1 "Ah Ah Ah" 8 "01010101" 2
int bestsubmatrix(int nr, int nc, double S[nr][nc], double m)
che ritorna l'area (cioè il numero di elementi) della più grande
sottomatrice quadrata o rettangolare della matrice S (avente nr
righe e nc colonne) con indice di rischio sismico non superiore
a m. Ecco alcuni esempi di input e output (in grassetto sono evidenziate
alcune sottomatrici di massima area):
nr = 6, nc = 8, m = 3.7 6.46 3.36 4.29 3.64 5.97 3.15 5.66 3.20 3.40 6.22 2.44 6.66 5.55 6.83 1.44 7.70 4.73 3.52 5.87 7.52 2.96 7.20 6.24 0.72 3.34 1.65 7.81 3.57 2.25 3.52 0.89 7.02 5.93 2.19 5.87 3.38 7.01 7.73 7.66 4.11 7.72 7.07 7.04 1.66 0.64 2.05 7.84 6.60 La funzione ritorna 9 nr = 5, nc = 5, m = 2.4 1.84 3.68 4.31 4.39 4.59 6.75 5.89 6.83 6.18 6.49 4.22 1.64 2.15 4.94 1.61 3.68 1.18 6.19 4.30 5.01 3.91 6.57 1.15 4.39 5.89 La funzione ritorna 2 nr = 5, nc = 4, m = 2.6 5.69 1.42 2.70 2.17 2.07 4.01 2.78 2.88 6.84 2.94 2.96 1.85 1.83 1.76 5.64 5.51 6.31 5.50 4.26 6.10 La funzione ritorna 6
![]() |
Questo sito usa cookies, usandolo ne accettate la presenza. (CookiePolicy)
Torna al Dipartimento di Informatica |
|