Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


118 / 13197 ツリー ←次へ | 前へ→

【79629】住所をいい感じに区切る りった 18/2/21(水) 15:12 質問[未読]

【79647】Re:住所をいい感じに区切る γ 18/2/24(土) 10:43 回答[未読]
【79660】Re:住所をいい感じに区切る りった 18/3/1(木) 16:40 お礼[未読]

【79647】Re:住所をいい感じに区切る
回答  γ  - 18/2/24(土) 10:43 -

引用なし
パスワード
   カンマで文節を区切ったうえで、それぞれの文字数をカウントしておきます。

4行になるものとし、各行の最後の文節のインデックスを、定めればよいわけです。
それらを k1,k2,k3,n (n はこの場合6です)とすると、
5個のなかから3個を取り出す組み合わせですから、10ケースです。
それを しらみつぶし に検証すればよいだけです。

例えば、こんな感じ。

  '組み合わせを列挙。
  '4行になるものとし、各行に含まれる最後の文節のインデックスを、
  'それぞれ、k1,k2,k3,n として、すべての組み合わせを列挙します。
  
  myMin = 1000
  For k1 = 1 To n - 3
    For k2 = k1 + 1 To n - 2
      For k3 = k2 + 1 To n - 1
        '各区分の長さの最大値を最小となる組み合わせを調べます
        以下略

もう解決したと思いますが。

【79660】Re:住所をいい感じに区切る
お礼  りった  - 18/3/1(木) 16:40 -

引用なし
パスワード
   追伸来ていることに今気が付きました。

下記で出来ました。

for 行1 1〜全文節数
for 行2 1〜全文節数
 for 行3 1〜全文節数
  for 行4 1〜全文節数
  合計文節数チェック
  ベストスコアだったら区切り方保存
  next
 next
next
next

スコア = 最大行の文字数 * 1000000000 + 2位の文字数 * 1000000 + 3位の文字数

118 / 13197 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free