質問編集履歴

4

文章の修正

2020/10/15 00:38

投稿

tamago_yaki
tamago_yaki

スコア2

test CHANGED
File without changes
test CHANGED
@@ -32,13 +32,15 @@
32
32
 
33
33
 
34
34
 
35
- それぞれ、一番小さい数字からはじまり 、半時計周りであるというルールがあります。
35
+ それぞれ、一番小さい数字からはじまり 、半時計周りです。
36
+
37
+
36
38
 
37
39
 
38
40
 
39
41
  例えば、Eは6行目に、三角形6を作る3点、10、11、15があります。
40
42
 
41
- また、Nは、10行目に、点10に隣接する三角形、5、7、8、6があります。
43
+ また、Nは、10行目に、点10に隣接する三角形、5、7、8、6があります。
42
44
 
43
45
 
44
46
 
@@ -56,7 +58,7 @@
56
58
 
57
59
  この行列において、
58
60
 
59
- ~~ (1)~~
61
+ (1)
60
62
 
61
63
  Nのみが与えられたとき、Eの行列を作り上げる
62
64
 
@@ -116,7 +118,7 @@
116
118
 
117
119
  ---
118
120
 
119
- O(N)という制約のあるアルゴリズムをつくっているのですが、
121
+ O(N)のあるアルゴリズムをつくっているのですが、
120
122
 
121
123
  アルゴリズムがどうしても思いつかなくなり、質問をさせて頂きました。
122
124
 
@@ -164,7 +166,7 @@
164
166
 
165
167
  と導き出せたのですが、
166
168
 
167
- 上の(2)の効率の良いアルゴリズムが思いつきません。
169
+ 上の(2)の効率の良いアルゴリズムが思いつきませんでした
168
170
 
169
171
 
170
172
 

3

誤字の修正をしました。

2020/10/15 00:38

投稿

tamago_yaki
tamago_yaki

スコア2

test CHANGED
File without changes
test CHANGED
@@ -146,7 +146,7 @@
146
146
 
147
147
  5. For e = 1: N
148
148
 
149
- 1. I 1:3 #3つエントリーがあるから
149
+ 1. for i 1:3 #3つエントリーがあるから
150
150
 
151
151
  2. n = E[e,i]
152
152
 
@@ -210,7 +210,7 @@
210
210
 
211
211
  1. テーブルの作成
212
212
 
213
- 1. If I == 3:
213
+ 1. If i == 3:
214
214
 
215
215
  1. B[ i ] = [ E[e,i], E[e,i-2]]
216
216
 

2

アルゴリズム を追加してみました。

2020/10/14 20:07

投稿

tamago_yaki
tamago_yaki

スコア2

test CHANGED
@@ -1 +1 @@
1
- 効率の良いアルゴリズムをつくる方法を教えて頂けないでしょうか
1
+ 効率の良いアルゴリズムをつくる方法を教えて頂けないでしょうか
test CHANGED
@@ -171,3 +171,67 @@
171
171
  どなたか、効率の良いアルゴリズムを教えて頂けないでしょうか。
172
172
 
173
173
  どうか、宜しくお願い致します。
174
+
175
+
176
+
177
+
178
+
179
+
180
+
181
+
182
+
183
+
184
+
185
+ (2)のアルゴリズム
186
+
187
+
188
+
189
+ ```ここに言語を入力
190
+
191
+
192
+
193
+ 1. EからNe行をの行数を数える
194
+
195
+ 2. Nn = Eで一番大きい数をストックする
196
+
197
+ 3. Counter ベクトル C=0 #三角形の辺の数
198
+
199
+ 4. B=0 空の行列 #三角形の辺を保存する
200
+
201
+ 5. A 0 空の行列 #現在みているの三角形辺を保存する
202
+
203
+ 6. For e = 1: Nn
204
+
205
+ 1. For i 1:3 #3つエントリーがあるが、
206
+
207
+ 1. C = C + 3
208
+
209
+
210
+
211
+ 1. テーブルの作成
212
+
213
+ 1. If I == 3:
214
+
215
+ 1. B[ i ] = [ E[e,i], E[e,i-2]]
216
+
217
+ 2. A[ i ] = [ E[e,i], E[e,i-2]]
218
+
219
+ 2. else:
220
+
221
+ 1. B[ i ] = [ E[e,i], E[e,i+1]]
222
+
223
+ 2. A[ i ] = [ E[e,i], E[e,i+1]]
224
+
225
+
226
+
227
+
228
+
229
+ 1. num=A ∩ B をして、重なった数字をCから消す
230
+
231
+ 2. C = C-num
232
+
233
+ 3.
234
+
235
+ 4. A を空にする。
236
+
237
+ ```

1

罫線などを入れてみやすくしました。問題文をわかりやすく書き換えました。

2020/10/14 19:54

投稿

tamago_yaki
tamago_yaki

スコア2

test CHANGED
File without changes
test CHANGED
@@ -44,9 +44,19 @@
44
44
 
45
45
 
46
46
 
47
+
48
+
49
+ ---
50
+
51
+
52
+
53
+
54
+
55
+
56
+
47
57
  この行列において、
48
58
 
49
- (1)
59
+ ~~ (1)~~
50
60
 
51
61
  Nのみが与えられたとき、Eの行列を作り上げる
52
62
 
@@ -54,19 +64,59 @@
54
64
 
55
65
  ことができるプログラミングのアルゴリズム1
56
66
 
67
+ (教えて頂きました。本当にありがとうございました。)
68
+
69
+
70
+
71
+ ```ここに言語を入力
72
+
73
+ 1. N を読み込み、行数Nnを数える
74
+
75
+ 2. N の一番大きな数字を見つける #(16)
76
+
77
+ 3. 16行x3列のEという空の行列を作る。
78
+
79
+ 1. For i 1:Nn # N行のループ
80
+
81
+ 1. For j 1: len(N[i]) #Nそれぞれの行の要素数の分だけループ
82
+
83
+ 1. E[ N[i ][j] ]に i を ストック
84
+
85
+ ```
86
+
57
87
 
58
88
 
89
+
90
+
91
+
92
+
59
- (2)
93
+ __(2)
60
94
 
61
95
  Eのみが与えられたとき、点と点を結ぶ線の数(黒線)を求める、
62
96
 
63
- ことができるアルゴリズム2
97
+ ことができるアルゴリズム2__
98
+
99
+
100
+
101
+ ```ここに言語を入力
102
+
103
+ 1.
104
+
105
+ ```
106
+
107
+
108
+
109
+
64
110
 
65
111
 
66
112
 
67
113
  を考えています。
68
114
 
115
+
116
+
117
+ ---
118
+
69
- 制約があり、O(N)のアルゴリズムをつくっているのですが、
119
+ O(N)という制約あるアルゴリズムをつくっているのですが、
70
120
 
71
121
  アルゴリズムがどうしても思いつかなくなり、質問をさせて頂きました。
72
122
 
@@ -80,11 +130,11 @@
80
130
 
81
131
 
82
132
 
83
- Eの行列から、N行列を求める
84
-
85
- ```ここに言語を入力
86
133
 
87
134
 
135
+ ```
136
+
137
+ (Eの行列から、N行列を求める)
88
138
 
89
139
  1. EからNe行をの行数を数える
90
140
 
@@ -106,7 +156,7 @@
106
156
 
107
157
 
108
158
 
109
- コード
159
+
110
160
 
111
161
  ```
112
162
 
@@ -114,7 +164,7 @@
114
164
 
115
165
  と導き出せたのですが、
116
166
 
117
- 上の2つの効率の良いアルゴリズムが思いつきません。
167
+ 上の(2)の効率の良いアルゴリズムが思いつきません。
118
168
 
119
169
 
120
170