質問編集履歴

4

目的について記載。

2019/12/25 10:03

投稿

Purindle
Purindle

スコア7

test CHANGED
File without changes
test CHANGED
@@ -3,6 +3,8 @@
3
3
 
4
4
 
5
5
  以下を実現したいのですが、ループのネストをせずに実現することは可能でしょうか。
6
+
7
+ ※目的は処理の高速化です。
6
8
 
7
9
 
8
10
 
@@ -24,15 +26,15 @@
24
26
 
25
27
  各インデックスの値とそのインデックス以降の値を比較して、
26
28
 
27
- 10以上になった後、10以下になった場合、
29
+ * 10以上になった後、10以下になった場合、
28
30
 
29
31
   または、10以下になった後、10以上になった場合、
30
32
 
31
33
   または、どの条件にも該当しない場合:0
32
34
 
33
- 10以下に一度もなっていない状態で、20以上になった場合:1
35
+ * 10以下に一度もなっていない状態で、20以上になった場合:1
34
36
 
35
- 10以上に一度もなっていない状態で、20以下がった場合:2
37
+ * 10以上に一度もなっていない状態で、20以下がった場合:2
36
38
 
37
39
 
38
40
 

3

得たい結果の説明を修正。

2019/12/25 10:03

投稿

Purindle
Purindle

スコア7

test CHANGED
File without changes
test CHANGED
@@ -24,15 +24,15 @@
24
24
 
25
25
  各インデックスの値とそのインデックス以降の値を比較して、
26
26
 
27
- ・20以上になった場合:1
28
-
29
- ・20以下がった場合:2
30
-
31
27
  ・10以上になった後、10以下になった場合、
32
28
 
33
29
   または、10以下になった後、10以上になった場合、
34
30
 
35
-  または、いずれにも該当しない場合:0
31
+  または、どの条件にも該当しない場合:0
32
+
33
+ ・10以下に一度もなっていない状態で、20以上になった場合:1
34
+
35
+ ・10以上に一度もなっていない状態で、20以下がった場合:2
36
36
 
37
37
 
38
38
 

2

得たい結果の開設を修正し、入出力の例を増やしました。

2019/12/25 09:58

投稿

Purindle
Purindle

スコア7

test CHANGED
File without changes
test CHANGED
@@ -24,21 +24,63 @@
24
24
 
25
25
  各インデックスの値とそのインデックス以降の値を比較して、
26
26
 
27
- ・10以上、10以下になった場合:0
28
-
29
27
  ・20以上になった場合:1
30
28
 
31
29
  ・20以下がった場合:2
32
30
 
31
+ ・10以上になった後、10以下になった場合、
32
+
33
+  または、10以下になった後、10以上になった場合、
34
+
35
+  または、いずれにも該当しない場合:0
36
+
37
+
38
+
33
- ##### 入力
39
+ ##### 入力1
34
40
 
35
41
  [10, 0, 20, 9, 9, 9, 0, 29]
36
42
 
37
43
 
38
44
 
39
- ##### 出力
45
+ ##### 出力1
40
46
 
41
47
  [0, 1, 2, 1, 1, 1, 1, 0]
48
+
49
+
50
+
51
+ ##### 入力2
52
+
53
+
54
+
55
+ [25, 36, 14, 50, 0]
56
+
57
+
58
+
59
+ ##### 出力2
60
+
61
+
62
+
63
+ [0, 2, 1, 2, 0]
64
+
65
+
66
+
67
+ ##### 入力3
68
+
69
+
70
+
71
+ [25, 24, 24, 24, 24]
72
+
73
+
74
+
75
+ ##### 出力3
76
+
77
+
78
+
79
+ [0, 0, 0, 0, 0]
80
+
81
+
82
+
83
+
42
84
 
43
85
 
44
86
 
@@ -52,7 +94,7 @@
52
94
 
53
95
 
54
96
 
55
- arr = np.array([10, 0, 20, 9, 9, 9, 0, 29])
97
+ arr = np.array([25, 36, 14, 50, 0])
56
98
 
57
99
  result = [0] * len(arr)
58
100
 

1

タグ追加

2019/12/25 09:56

投稿

Purindle
Purindle

スコア7

test CHANGED
File without changes
test CHANGED
File without changes