Files

102 lines
2.3 KiB
Markdown
Raw Permalink Normal View History

---
id: 5e6dd14192286d95fc43046e
title: 最長文字列チャレンジ
challengeType: 5
forumTopicId: 385275
dashedName: longest-string-challenge
---
# --description--
このチャレンジでは、与えられた文字列の中で最も長い文字列を見つけます。
# --instructions--
文字列の配列を取り、長さが最長であるすべての文字列を返す関数を記述してください。
# --hints--
`longestString` は関数とします。
```js
assert(typeof longestString == 'function');
```
`longestString(["a", "bb", "ccc", "ee", "f", "ggg"])` は配列を返す必要があります。
```js
assert(Array.isArray(longestString(['a', 'bb', 'ccc', 'ee', 'f', 'ggg'])));
```
`longestString(["a", "bb", "ccc", "ee", "f", "ggg"])``["ccc", "ggg"]` を返す必要があります。
```js
assert.deepEqual(longestString(['a', 'bb', 'ccc', 'ee', 'f', 'ggg']), [
'ccc',
'ggg'
]);
```
`longestString(["afedg", "bb", "sdccc", "efdee", "f", "geegg"])``["afedg", "sdccc", "efdee", "geegg"]` を返す必要があります。
```js
assert.deepEqual(
longestString(['afedg', 'bb', 'sdccc', 'efdee', 'f', 'geegg']),
['afedg', 'sdccc', 'efdee', 'geegg']
);
```
`longestString(["a", "bhghgb", "ccc", "efde", "fssdrr", "ggg"])``["bhghgb", "fssdrr"]` を返す必要があります。
```js
assert.deepEqual(
longestString(['a', 'bhghgb', 'ccc', 'efde', 'fssdrr', 'ggg']),
['bhghgb', 'fssdrr']
);
```
`longestString(["ahgfhg", "bdsfsb", "ccc", "ee", "f", "ggdsfg"])``["ahgfhg", "bdsfsb", "ggdsfg"]` を返す必要があります。
```js
assert.deepEqual(
longestString(['ahgfhg', 'bdsfsb', 'ccc', 'ee', 'f', 'ggdsfg']),
['ahgfhg', 'bdsfsb', 'ggdsfg']
);
```
`longestString(["a", "bbdsf", "ccc", "edfe", "gzzzgg"])``["gzzzgg"]` を返す必要があります。
```js
assert.deepEqual(longestString(['a', 'bbdsf', 'ccc', 'edfe', 'gzzzgg']), [
'gzzzgg'
]);
```
# --seed--
## --seed-contents--
```js
function longestString(strings) {
}
```
# --solutions--
```js
function longestString(strings) {
var mx = 0;
var result = []
strings.forEach(function (e) {
if (e.length > mx) {
mx = e.length
result = [e]
} else if (e.length == mx)
result.push(e)
})
return result
}
```