Add tags

Add tags to the following comment
あらかじめ道のデータを配列として取り込んでいます。
各点とその上の店、左の点との関係は
 どっちもつながってない(スタート地点):0
 左の点とだけつながってる:1
 上の点とだけつながってる:2
 左も上もつながってる:3
とし、それぞれの点の状態を見て計算します。
図1の場合はroad[2][1]=3、図2の場合はroad[2][1]=1で計算
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include <iostream>
using namespace std;

int main(){
  int road[5][4] = { {0, 1, 1, 1},
                      {2, 3, 3, 3},
                      {2, 1, 3, 3},
                      {2, 3, 3, 3},
                      {2, 3, 3, 3}
                    };

  int pattern[5][4];

  int i, j;
  for(i=0; i<5; i++){
    for(j=0; j<4; j++){
      switch(road[i][j]){
      case 0: pattern[i][j] = 1; break;
      case 1: pattern[i][j] = pattern[i][j-1]; break;
      case 2: pattern[i][j] = pattern[i-1][j]; break;
      case 3: pattern[i][j] = pattern[i][j-1] + pattern[i-1][j]; break;
      }
    }
  }
  cout << "road pattern is " << pattern[4][3] << ".\n";

  return 0;
}

Add tags

The input will be splited to tags with space.

Index

Feed

Other

Link

Pathtraq

loading...