Slide 1

Slide 1 text

RubyͰڝٕϓϩάϥϛϯά(ೖ໳ฤ) RubyKaigi 2016 Kyoto LT (2016-09-10) yhara (Yutaka Hara) RubyKaigi 2016 Kyoto LT (2016-09-10) 1

Slide 2

Slide 2 text

NaCl দߐຊࣾ AtCoderձ • ਫ༵18:00-20:00 • 4,5ਓͰ΍ͬͯΔ • ݴޠ͸ࣗ༝ (͍·ͷͱ͜ΖΈΜͳRuby) RubyKaigi 2016 Kyoto LT (2016-09-10) 2

Slide 3

Slide 3 text

ڝٕϓϩάϥϛϯάͬͯʁ RubyKaigi 2016 Kyoto LT (2016-09-10) 3

Slide 4

Slide 4 text

ϓϩάϥϛϯάίϯςετ RubyKaigi 2016 Kyoto LT (2016-09-10) 4

Slide 5

Slide 5 text

৚݅Λຬͨ͢ϓϩάϥϜΛɺ଎͘ɾ ਖ਼֬ʹهड़͢Δڝٕ RubyKaigi 2016 Kyoto LT (2016-09-10) 5

Slide 6

Slide 6 text

C(++, #)ͱJava͚ͩ͡Όͳ͍ͷʁ RubyKaigi 2016 Kyoto LT (2016-09-10) 6

Slide 7

Slide 7 text

RubyͰ΋ࢀՃͰ͖Δ RubyKaigi 2016 Kyoto LT (2016-09-10) 7

Slide 8

Slide 8 text

• Sphere Online Judge • Aizu Online Judge • yukicoder • AtCoder ←ࠓ೔͸͜ΕΛ঺հ RubyKaigi 2016 Kyoto LT (2016-09-10) 8

Slide 9

Slide 9 text

Ruby 2.3.0͕ೖͬͯΔ RubyKaigi 2016 Kyoto LT (2016-09-10) 9

Slide 10

Slide 10 text

Կ͔Β΍Ε͹͍͍ͷʁ RubyKaigi 2016 Kyoto LT (2016-09-10) 10

Slide 11

Slide 11 text

• AtCoder Grand Contest • AtCoder Regular Contest • AtCoder Beginner Contest • AtCoder Typical Contest RubyKaigi 2016 Kyoto LT (2016-09-10) 11

Slide 12

Slide 12 text

΍Βͳ͍ RubyKaigi 2016 Kyoto LT (2016-09-10) 12

Slide 13

Slide 13 text

աڈ໰Λ΍Δ RubyKaigi 2016 Kyoto LT (2016-09-10) 13

Slide 14

Slide 14 text

• ޷͖ͳͱ͖ʹͰ͖Δ • যΒͳͯ͘ࡁΉ RubyKaigi 2016 Kyoto LT (2016-09-10) 14

Slide 15

Slide 15 text

• AtCoder Grand Contest • AtCoder Regular Contest • AtCoder Beginner Contest • AtCoder Typical Contest RubyKaigi 2016 Kyoto LT (2016-09-10) 15

Slide 16

Slide 16 text

AtCoder Beginner Contest • A: ָউ • B: ؆୯ • C: ॳڃ • D: தڃ(΍Γͨ͑͋͝Δ) ※ճʹΑͬͯ೉қ౓ʹ͸ඍົͳ͕ࠩ͋Γ·͢(͍͖ͳΓ೉͍͠ճҾ͍ ͯ΋མͪࠐ·ͳ͍Α͏ʹ) RubyKaigi 2016 Kyoto LT (2016-09-10) 16

Slide 17

Slide 17 text

Rubyͩͱ λΠϜΞ΢τ ͦ͠͏…ʁ RubyKaigi 2016 Kyoto LT (2016-09-10) 17

Slide 18

Slide 18 text

ͦΕͳΓઓ͑Δ RubyKaigi 2016 Kyoto LT (2016-09-10) 18

Slide 19

Slide 19 text

ΞϧΰϦζϜ͸େࣄ RubyKaigi 2016 Kyoto LT (2016-09-10) 19

Slide 20

Slide 20 text

ྫɿҰྻΦηϩ (C໰୊) RubyKaigi 2016 Kyoto LT (2016-09-10) 20

Slide 21

Slide 21 text

ҰྻΦηϩ • NݸͷۨͱɺQݸͷϨϯδ͕༩͑ΒΕΔ • ֤ൣғΛͻͬ͘Γฦͨ͠ͱ͖ͷ࠷ऴঢ়ଶΛٻΊΑ ●●●●●●●●● 1..4 2..6 8..9 ɹɹ↓ ○●●●○○●○○ RubyKaigi 2016 Kyoto LT (2016-09-10) 21

Slide 22

Slide 22 text

֤ൣғʹ͍ͭͯۨΛ൓సͤ͞Ε͹͍͍͚ͩ͡ ΌͶʁ ranges.each do |r| r.each do |i| line[i] = !line[i] end end RubyKaigi 2016 Kyoto LT (2016-09-10) 22

Slide 23

Slide 23 text

ͱ͜Ζ͕ RubyKaigi 2016 Kyoto LT (2016-09-10) 23

Slide 24

Slide 24 text

• Φηϩ͕(࠷େ)20ສݸ͋Δ • ൣғ΋(࠷େ)20ສݸ͋Δ RubyKaigi 2016 Kyoto LT (2016-09-10) 24

Slide 25

Slide 25 text

਺ेԯճɺ൓స͠ͳ͍ͱ͍͚ͳ͍ ranges.each do |r| # <- 20ສճ r.each do |i| # <- ͦΕͧΕ਺ສճ͘Β͍ line[i] = !line[i] end end RubyKaigi 2016 Kyoto LT (2016-09-10) 25

Slide 26

Slide 26 text

⏰ ੍ݶ࣌ؒ͸2ඵ RubyKaigi 2016 Kyoto LT (2016-09-10) 26

Slide 27

Slide 27 text

͏·͍΍Γ͔ͨ ৭͕มΘΔͱ͜Ζ͚ͩΛ͓֮͑ͯ͘ 2 10001 23005 ↓ɹɹɹɹ↓ɹɹ↓ ○●●...●○...○●●● RubyKaigi 2016 Kyoto LT (2016-09-10) 27

Slide 28

Slide 28 text

௨ͬͨʂ RubyKaigi 2016 Kyoto LT (2016-09-10) 28

Slide 29

Slide 29 text

RubyͰ΋ڝϓϩͰ͖Δͧ ! (গͳ͘ͱ΋Beginner ContestͳΒ) RubyKaigi 2016 Kyoto LT (2016-09-10) 29

Slide 30

Slide 30 text

! ༨ஊ ! RubyKaigi 2016 Kyoto LT (2016-09-10) 30

Slide 31

Slide 31 text

RubyKaigi 2016 Kyoto LT (2016-09-10) 31

Slide 32

Slide 32 text

ABC037-D • 1000x1000ͷ໎࿏Λ୳ࡧ͢Δ໰୊ • νϟϨϯδϟʔٻΉ • Ruby3͸3ഒ଎͘ͳΔͱ͍͏ᷚͳͷͰ͖ͬͱ௨ΔΑ͏ʹͳΔ͸ ͣʁ RubyKaigi 2016 Kyoto LT (2016-09-10) 32

Slide 33

Slide 33 text

Crystalͩͱ௨Δ(͕͢͞) ※CrystalɿRubyʹΑ͘ࣅͨ੩తܕ෇͚ݴޠ RubyKaigi 2016 Kyoto LT (2016-09-10) 33

Slide 34

Slide 34 text

pypy2΋௨ͬͯΔ ※pypy2ɿPythonॲཧܥͷҰͭ RubyKaigi 2016 Kyoto LT (2016-09-10) 34

Slide 35

Slide 35 text

Python3!? RubyKaigi 2016 Kyoto LT (2016-09-10) 35

Slide 36

Slide 36 text

RubyKaigi 2016 Kyoto LT (2016-09-10) 36

Slide 37

Slide 37 text

RubyKaigi 2016 Kyoto LT (2016-09-10) 37

Slide 38

Slide 38 text

RubyKaigi 2016 Kyoto LT (2016-09-10) 38

Slide 39

Slide 39 text

(ྑ͍ࢠ͸ਅࣅ͠ͳ͍Α͏ʹ !) RubyKaigi 2016 Kyoto LT (2016-09-10) 39