SECTION 05 / 13

Local counts: longest sentence and longest grouped run

3 min read
On this page 4 headings

Sometimes the value to maximize is not printed on one card. You must first build a local count across several cards, then compare it with the best completed group.

The actual five sentence lengths are 4, 7, 8, 21 and 25 words. Sentence 5 is longest.
The actual five sentence lengths are 4, 7, 8, 21 and 25 words. Sentence 5 is longest.
YOUR COURSE DATA · TRY IT HERE

Find the longest sentence

Use the supplied 65 word cards. No download or coding is needed.

READY TO START

A pile of 65 cards

Start with the first card. Read its fields, do one small action, then move on.

What we remember

Read
0

Nothing has been read yet. Choose Next card to begin.

Look through all 65 original records
ItPronoun · 2 letters
SerialNumber
0
Word
It
PartOfSpeech
Pronoun
LetterCount
2
wasVerb · 3 letters
SerialNumber
1
Word
was
PartOfSpeech
Verb
LetterCount
3
MondayNoun · 6 letters
SerialNumber
2
Word
Monday
PartOfSpeech
Noun
LetterCount
6
morning.Noun · 7 letters
SerialNumber
3
Word
morning.
PartOfSpeech
Noun
LetterCount
7
SwaminathanNoun · 11 letters
SerialNumber
4
Word
Swaminathan
PartOfSpeech
Noun
LetterCount
11
wasVerb · 3 letters
SerialNumber
5
Word
was
PartOfSpeech
Verb
LetterCount
3
reluctantAdjective · 9 letters
SerialNumber
6
Word
reluctant
PartOfSpeech
Adjective
LetterCount
9
toPreposition · 2 letters
SerialNumber
7
Word
to
PartOfSpeech
Preposition
LetterCount
2
openVerb · 4 letters
SerialNumber
8
Word
open
PartOfSpeech
Verb
LetterCount
4
hisPronoun · 3 letters
SerialNumber
9
Word
his
PartOfSpeech
Pronoun
LetterCount
3
eyes.Noun · 4 letters
SerialNumber
10
Word
eyes.
PartOfSpeech
Noun
LetterCount
4
HePronoun · 2 letters
SerialNumber
11
Word
He
PartOfSpeech
Pronoun
LetterCount
2
consideredVerb · 10 letters
SerialNumber
12
Word
considered
PartOfSpeech
Verb
LetterCount
10
MondayNoun · 6 letters
SerialNumber
13
Word
Monday
PartOfSpeech
Noun
LetterCount
6
speciallyAdverb · 9 letters
SerialNumber
14
Word
specially
PartOfSpeech
Adverb
LetterCount
9
unpleasantAdjective · 10 letters
SerialNumber
15
Word
unpleasant
PartOfSpeech
Adjective
LetterCount
10
inPreposition · 2 letters
SerialNumber
16
Word
in
PartOfSpeech
Preposition
LetterCount
2
theArticle · 3 letters
SerialNumber
17
Word
the
PartOfSpeech
Article
LetterCount
3
calendar.Noun · 8 letters
SerialNumber
18
Word
calendar.
PartOfSpeech
Noun
LetterCount
8
AfterPreposition · 5 letters
SerialNumber
19
Word
After
PartOfSpeech
Preposition
LetterCount
5
theArticle · 3 letters
SerialNumber
20
Word
the
PartOfSpeech
Article
LetterCount
3
deliciousAdjective · 9 letters
SerialNumber
21
Word
delicious
PartOfSpeech
Adjective
LetterCount
9
freedomNoun · 7 letters
SerialNumber
22
Word
freedom
PartOfSpeech
Noun
LetterCount
7
ofPreposition · 2 letters
SerialNumber
23
Word
of
PartOfSpeech
Preposition
LetterCount
2
SaturdayNoun · 8 letters
SerialNumber
24
Word
Saturday
PartOfSpeech
Noun
LetterCount
8
AndConjunction · 3 letters
SerialNumber
25
Word
And
PartOfSpeech
Conjunction
LetterCount
3
Sunday,Noun · 6 letters
SerialNumber
26
Word
Sunday,
PartOfSpeech
Noun
LetterCount
6
itPronoun · 2 letters
SerialNumber
27
Word
it
PartOfSpeech
Pronoun
LetterCount
2
wasVerb · 3 letters
SerialNumber
28
Word
was
PartOfSpeech
Verb
LetterCount
3
difficultAdjective · 9 letters
SerialNumber
29
Word
difficult
PartOfSpeech
Adjective
LetterCount
9
toPreposition · 2 letters
SerialNumber
30
Word
to
PartOfSpeech
Preposition
LetterCount
2
getVerb · 3 letters
SerialNumber
31
Word
get
PartOfSpeech
Verb
LetterCount
3
intoPreposition · 4 letters
SerialNumber
32
Word
into
PartOfSpeech
Preposition
LetterCount
4
theArticle · 3 letters
SerialNumber
33
Word
the
PartOfSpeech
Article
LetterCount
3
MondayNoun · 6 letters
SerialNumber
34
Word
Monday
PartOfSpeech
Noun
LetterCount
6
moodNoun · 4 letters
SerialNumber
35
Word
mood
PartOfSpeech
Noun
LetterCount
4
ofPreposition · 2 letters
SerialNumber
36
Word
of
PartOfSpeech
Preposition
LetterCount
2
workNoun · 4 letters
SerialNumber
37
Word
work
PartOfSpeech
Noun
LetterCount
4
andConjunction · 3 letters
SerialNumber
38
Word
and
PartOfSpeech
Conjunction
LetterCount
3
discipline.Noun · 10 letters
SerialNumber
39
Word
discipline.
PartOfSpeech
Noun
LetterCount
10
HePronoun · 2 letters
SerialNumber
40
Word
He
PartOfSpeech
Pronoun
LetterCount
2
shudderedVerb · 9 letters
SerialNumber
41
Word
shuddered
PartOfSpeech
Verb
LetterCount
9
atPreposition · 2 letters
SerialNumber
42
Word
at
PartOfSpeech
Preposition
LetterCount
2
theArticle · 3 letters
SerialNumber
43
Word
the
PartOfSpeech
Article
LetterCount
3
veryAdverb · 4 letters
SerialNumber
44
Word
very
PartOfSpeech
Adverb
LetterCount
4
thoughtNoun · 7 letters
SerialNumber
45
Word
thought
PartOfSpeech
Noun
LetterCount
7
ofPreposition · 2 letters
SerialNumber
46
Word
of
PartOfSpeech
Preposition
LetterCount
2
school:Noun · 6 letters
SerialNumber
47
Word
school:
PartOfSpeech
Noun
LetterCount
6
theArticle · 3 letters
SerialNumber
48
Word
the
PartOfSpeech
Article
LetterCount
3
dismalAdjective · 6 letters
SerialNumber
49
Word
dismal
PartOfSpeech
Adjective
LetterCount
6
yellowAdjective · 6 letters
SerialNumber
50
Word
yellow
PartOfSpeech
Adjective
LetterCount
6
building;Noun · 8 letters
SerialNumber
51
Word
building;
PartOfSpeech
Noun
LetterCount
8
theArticle · 3 letters
SerialNumber
52
Word
the
PartOfSpeech
Article
LetterCount
3
fire-eyedAdjective · 8 letters
SerialNumber
53
Word
fire-eyed
PartOfSpeech
Adjective
LetterCount
8
Vedanayagam,Noun · 11 letters
SerialNumber
54
Word
Vedanayagam,
PartOfSpeech
Noun
LetterCount
11
hisPronoun · 3 letters
SerialNumber
55
Word
his
PartOfSpeech
Pronoun
LetterCount
3
classNoun · 5 letters
SerialNumber
56
Word
class
PartOfSpeech
Noun
LetterCount
5
teacher,Noun · 7 letters
SerialNumber
57
Word
teacher,
PartOfSpeech
Noun
LetterCount
7
andConjunction · 3 letters
SerialNumber
58
Word
and
PartOfSpeech
Conjunction
LetterCount
3
headmasterNoun · 10 letters
SerialNumber
59
Word
headmaster
PartOfSpeech
Noun
LetterCount
10
withPreposition · 4 letters
SerialNumber
60
Word
with
PartOfSpeech
Preposition
LetterCount
4
hisPronoun · 3 letters
SerialNumber
61
Word
his
PartOfSpeech
Pronoun
LetterCount
3
thinAdjective · 4 letters
SerialNumber
62
Word
thin
PartOfSpeech
Adjective
LetterCount
4
longAdjective · 4 letters
SerialNumber
63
Word
long
PartOfSpeech
Adjective
LetterCount
4
cane...Noun · 4 letters
SerialNumber
64
Word
cane...
PartOfSpeech
Noun
LetterCount
4
The supplied word table produces sentence lengths 4,7,8,21,25.
The supplied word table produces sentence lengths 4,7,8,21,25.

Two variables with different lifetimes

Count measures the current sentence, so reset it at each sentence boundary. Longest measures the best completed sentence, so keep it across boundaries. Count the full-stop word before testing the boundary, then compare and reset.

Count = 0
Longest = 0
For each word X in paragraph order {
    Count = Count + 1
    if (X.Word ends in a full stop) {
        if (Count > Longest) { Longest = Count }
        Count = 0
    }
}
If Count > 0: handle the unfinished last segment by the stated rule

Check the actual paragraph

SentenceCard IDs (inclusive)Length
10–34
24–107
311–188
419–3921
540–6425

These lengths total 65 cards, and the longest is 25 words. The spoken demonstration calls the fourth count 20; the supplied table has 21. The final cane... token closes the last sentence once; its three printed dots are not three extra words or sentences.

Never forget the last group

The supplied paragraph ends with punctuation, so its last group is finalized inside the loop. For general input without a final stop, choose whether an unfinished segment counts as a sentence, then implement that rule. For grouped records whose boundaries are signaled by a changed key, flush the last group after the loop: no later key change will do it for you.

Tutorial: students grouped by birth month

Tutorial 2.2 groups equal birth months together and counts each contiguous run. On a new month, finalize the old month’s count and start the new one at 1 for the current card. At end of input finalize the last month too. Alphabetic month order is enough for grouping; it is not calendar order.

From the supplied Scores table, March, May and December each have 4 students, the highest birth-month frequency. A run method is correct only after equal months are together. If cards are shuffled, use a separate counter for every month instead.

Try it yourself

If a sentence has three cards and the third ends in a full stop, is its length 2 or 3?

Show explained answer

3. The punctuation-bearing word is still a word in the sentence.

Try it yourself

Which variable resets after a sentence: Count, Longest, or both?

Show explained answer

Reset Count only. Longest must retain the best completed count so far.

Try it yourself

Why can a final group be lost in a run-counting algorithm?

Show explained answer

If you update only when the group label changes, the last group has no following change. Finalize it after the loop.

Try it yourself

Can an ungrouped sequence Jan,Feb,Jan be used to count all January students by one run?

Show explained answer

No. It has two separate Jan runs. Group equal keys first or keep a persistent count for Jan.

Source: Lecture 2.3; Tutorial 2.2. Small teaching datasets and diagrams are prepared for these notes; lecture and tutorial totals are identified explicitly.

YOUR STUDY PROGRESS

Finished this section? Save your progress.

Back to top ↑