質問編集履歴

3

追記

2018/10/08 07:41

投稿

t.s_k
t.s_k

スコア61

test CHANGED
File without changes
test CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
 
6
6
 
7
- 以下の例で言えば9,1だけを**1行おきに出力**みたな感じです。
7
+ 以下の例で言えば9,1だけを**1行おき**かつ**低い順に**するとう条件です。
8
8
 
9
9
 
10
10
 

2

追記

2018/10/08 07:41

投稿

t.s_k
t.s_k

スコア61

test CHANGED
File without changes
test CHANGED
@@ -1,12 +1,10 @@
1
1
  ハッシュ要素のバリューが一番高いものを全て出力したいですが、
2
2
 
3
- バリュー値の取得がわからないため、教えていただきたいです。
3
+ バリュー値の取得がわからないため、教えていただきたいです。追記↓
4
4
 
5
5
 
6
6
 
7
- 以下の例で言えば9,1だけを出力みたいな感じです。
7
+ 以下の例で言えば9,1だけを**1行おきに出力**みたいな感じです。
8
-
9
-
10
8
 
11
9
 
12
10
 
@@ -57,3 +55,75 @@
57
55
  # {9=>2, 1=>2, 7=>1, 3=>1}
58
56
 
59
57
  ```
58
+
59
+
60
+
61
+
62
+
63
+ 追記
64
+
65
+ max_byをしようした上でsortをしようすると、sortメソッドにmax_byが上書きされてしまいます。
66
+
67
+
68
+
69
+ ```rb
70
+
71
+ ary = []
72
+
73
+ count = Hash.new(0)
74
+
75
+ while tmp = gets
76
+
77
+ break if tmp.to_i == 0
78
+
79
+ ary << tmp.to_i
80
+
81
+ end
82
+
83
+
84
+
85
+ ary.each do |ary_i|
86
+
87
+ count[ary_i] += 1
88
+
89
+ end
90
+
91
+
92
+
93
+ p count.sort{| (_,v1),(_,v2) | v2 <=> v1}.to_h
94
+
95
+
96
+
97
+ count.max_by{|_,v| v}.each do |max_by_i|
98
+
99
+ puts max_by_i
100
+
101
+ end
102
+
103
+
104
+
105
+ # 1
106
+
107
+ # 1
108
+
109
+ # 9
110
+
111
+ # 9
112
+
113
+ # 2
114
+
115
+ # 3
116
+
117
+ #
118
+
119
+ # 4
120
+
121
+ #
122
+
123
+ # {1=>2, 9=>2, 2=>1, 3=>1, 4=>1}
124
+
125
+ # 1
126
+
127
+ # 2
128
+
129
+ ```

1

誤字修正

2018/10/08 07:38

投稿

t.s_k
t.s_k

スコア61

test CHANGED
File without changes
test CHANGED
@@ -52,10 +52,8 @@
52
52
 
53
53
  # 7
54
54
 
55
- # 7
56
-
57
55
  #
58
56
 
59
- # {9=>2, 1=>2, 7=>2, 3=>1}
57
+ # {9=>2, 1=>2, 7=>1, 3=>1}
60
58
 
61
59
  ```