スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

LOCK OUT! #47

LOCK OUT! #22に出場して以来、約1年ぶりにまたLOCK OUT!に出場してきました。
LOCK OUT!の最大の特徴は誤答したら即失格という点にあります。
そのため、

「わかる問題をわかるポイントでしっかり押すこと、わからない問題には手を出さないこと」

これを徹底して心掛けることが今日の目標でした。
(さすがに勝負どころでは、少しは冒険しますが)

1回戦は4ポイント勝ち抜けなのですが、
2人勝ち抜けのところ、先に1人に抜けられ、もう1人も3ポイントでリーチ。自分は2ポイント。
次の問題はたまたま分かって自分もリーチをかけたのですが、
その次の問題が全く分からず、リーチ者の手が動いたことがわかりました。
しかし、ボタンがついたのは他の方で、命拾いをすることに。
次の問題はアメリカ議会の上院と下院のどちらかが答えになる2択だと問題の途中でわかったため、何かキーワードが聞こえたら押そうと思っていました。

問読み「議員の人数/が・・・」

ここでボタンを押しました。
本当は人数が多いか少ないかを判断できればよかったのですが、そこまでは聞こえず。
ただ、人数が多い方を聞く可能性が高いと判断し、「下院」と解答。幸運にも正解でなんとか勝ち抜けることができました。

続いて2回戦の通せんぼクイズ。
1番早く通過チャレンジをかけたのですが、自信を持てる問題が来ずに阻止されてしまいました。
その後、先に勝ち抜けられましたが、残りの1枠に何とかすべり込むことができ、決勝に進出できました。

しかし、決勝で不用意な誤答をしてしまい失格。
2回目のLOCK OUT!は決勝で1問正解で終わりました。

決勝の問題は自分には難しい問題が多く、仮に失格していなくても優勝は無理だったと思います。
明らかに実力不足だったので、負けたこと自体は悔いはありません。

ただ、負け方には悔いが残りました。
1回戦の最後のように勝負所ならともかく、
そうでないところで確信を持てないのに解答権を取って誤答をしてしまったのは最悪でした。
いつも古川さんに教えていただいていることができなかったことは本当に悔しかったです。
まだまだ知識もクイズのテクニックもメンタルコントロールも甘いことを痛感しました。

もっともっと勉強とトレーニングをして、また参加してみたいと思います。
LOCK OUT!の参加者の皆さん、スタッフの皆さん。ありがとうございました。
スポンサーサイト

クイズの問題文用に1桁の半角数字だけ全角にするVBAマクロを作った

クイズ界では問題文を次のような書式で書くルール(とまで厳密じゃないにしてもそういう傾向)がある。

原則として数字は半角数字で記載するが、1桁の数字の場合のみ全角数字で記載する。

自分で問題を作成したり、転記したりする時に出来る限り気をつけてはいるつもりなのだが、
やはり人間のやる事なのでたまにミスる。

そこで、最近仕事でVBAを使うようになったこともあり、
勉強も兼ねて簡単なVBAのコードを書いてみた。
1桁の数字のみ全角数字にして、あとは半角数字にするというただそれだけのVBAマクロである。

処理としては、いったんすべての数字を半角数字にして、
その後1桁の数字のみ全角に変換するようにしている。
一応小数点の判定もしている。
(小数点の数字は半角のまま)

なお、文字列しか判定していないはずなので、
問題番号等を数字で書いてある場合はそこは変換しません。
変換したいセルはあらかじめ表示形式を文字列にする必要があります。

動くかどうかの保証もしないし、このコードを使って何が起きても責任は持ちませんが、
もし使いたいという奇特な人が入れば、ご自由にお使いください。
なお作成はExcel2016で行いましたが、多分2007以降なら動くはずです。
ぶっちゃけもっと前のバージョンでも動くはずです。保障はしませんが。

なお、ブログではタブが反映されないようなので全角スペースに変換していますが、
そこは一斉置換とかで対応願います。


―――――ソースコードはここから―――――

'1桁の数字はすべて全角数字に
'2桁以上の数字はすべて半角数字に
'小数点やカンマで区切られた数字は2桁以上の数として扱い全角にはしない
Sub クイズ問題用数字変換()
  
  '変数宣言
  Dim i As Long    '繰り返し用変数(Long型)
  Dim c As Range   '繰り返し用変数(Range型)
  Dim MaxRow As Long '最終行代入用変数
  Dim MaxCol As Long '最終列代入用変数
  Dim buf As Variant '文字列取得用
  Dim flag As Boolean 'フラグ用
  
  '画面の再描画/自動計算を停止
  Application.ScreenUpdating = False
  Application.Calculation = xlCalculationManual
  
  '最終行および最終列を取得
  With ActiveSheet.UsedRange
    MaxRow = .Rows(.Rows.Count).Row
    MaxCol = .Columns(.Columns.Count).Column
  End With


  '全角数字を全て半角数字に変換する処理
  
  '使用されているセルの範囲を繰り返す
  For Each c In Range(Cells(1, 1), Cells(MaxRow, MaxCol))
    
    '変数初期化
    buf = ""
    
    '文字列を1文字ずつ最後の文字まで繰り返す
    For i = 1 To Len(c.Value)
    
      '全角数字判定部分
      If Mid(c.Value, i, 1) Like "[0-9]" Then
        
        '全角数字なら、半角数字に変換する
        buf = buf & StrConv(Mid(c.Value, i, 1), vbNarrow)
      
      Else
        
        'それ以外の文字ならそのまま
        buf = buf & Mid(c.Value, i, 1)
      
      End If
      
    Next i
    
    '全角数字→半角数字変換後の文字列を元のセルに代入
    c.Value = buf

  Next c
  
  
  '1桁の半角数字を全角数字に変換する処理

  '使用されているセルの範囲を繰り返す
  For Each c In Range(Cells(1, 1), Cells(MaxRow, MaxCol))
  
    '変数初期化
    '(行頭の場合前の文字列はないので初期値をFalseにしている)
    flag = False
    buf = ""
    
    '文字列を1文字ずつ最後の文字まで繰り返す
    For i = 1 To Len(c.Value)
    
      '半角数字でかつ次の文字が半角数字でかつ前の文字が数字でないかを判定
      '半角ピリオドや半角カンマで続いているものは連続した数字として扱い全角にしない
      If Mid(c.Value, i, 1) Like "[0-9]" _
      And Not Mid(c.Value, i + 1, 1) Like "[0-9]" _
      And Not Mid(c.Value, i + 1, 1) = "." _
      And Not Mid(c.Value, i + 1, 1) = "," _
      And flag = False Then
         
        '1桁の半角数字なら全角数字に変換
        buf = buf & StrConv(Mid(c.Value, i, 1), vbWide)
      
      Else
        
        'それ以外の文字ならそのまま
        buf = buf & Mid(c.Value, i, 1)
      
      End If
      
      '文字列から取り出した1文字が数字または半角ピリオドまたは半角カンマだったかを判定して
      'それらに該当すればTrue、該当しなければFalseをflagに代入
      'これにより前の文字が数字などの場合に次の文字を全角にしない判定に使用
      If IsNumeric(Mid(c.Value, i, 1)) = True _
      Or Mid(c.Value, i, 1) = "." _
      Or Mid(c.Value, i, 1) = "," Then
        flag = True
      Else
        flag = False
      End If
      
    Next i
    
    '1桁の半角数字→全角数字変換後の文字列を元のセルに代入
    c.Value = buf

  Next c
  
  '画面の再描画/自動計算を再開
  Application.Calculation = xlCalculationAutomatic
  Application.ScreenUpdating = True

End Sub


―――――ソースコードはここまで―――――


以上。

賢押杯 2016

昨年も参加したこの大会に参加してきました。

オープニングの70問ペーパークイズ。
自分の唯一の得意ジャンルであるスポーツ以外の問題はほとんどの問題の答えがわからず、
結果は自己採点の結果25点でした。

その後行われた教室予選。
昨年と同じく自分はジャンル別の予選に参加(スポーツ)。
昨年とルールも全く同じだったのですが、昨年は14点取ることができたのに、今年は7点しか取れませんでした。
他の参加者もほぼ一様に問題が難しかったとはおっしゃっていたので、問題が難しかったのだとは思いますが、
唯一の得意ジャンルの問題がほぼわからなかったので、自分の力の無さを改めて思い知ることになりました。

その後、ローリングクイズを見学した後、ペーパーによる通過者の発表。
当然のことながら、ボーダーには全然足りず。
そして敗者復活の○×クイズ。2問目で間違えてしまい、今年の参加者としての自分の賢押杯はここで終わりました。

この後は見学者として、本戦の1回戦、準々決勝、準決勝、決勝を見学。
見学しての感想は、ただただ問題の難しさに圧倒されたということでした。
1回戦はまだしも、準々決勝以降は出題された問題の1割くらいしか答えがわかりませんでした。
問題ディレクターの方いわく、全体的に問題の難易度は上げたとのことではありましたが、
問題の答えはもちろん、問題文に出てくる単語もほとんど聞いた事が無い言葉ばかりでした。

今年4月に参加したVWXでも感じたことでしたが、とにかく自分の圧倒的という言葉では足りないくらいの知識不足を痛感した1日でした。
そして、VWX以降勉強量を増やしたつもりでしたが、それが単なる自己満足でしかなかったこともよくわかりました。
ただ、abcなどで出題されるいわゆる基本問題ですらまだまだ全然覚えていないのに、
難問のフォローにまではとても手が回らないというのは正直なところです。

帰り道に自分の心に沸いた感情は、
楽しいという感情、つまらなかったという感情、悔しいという感情、それらのいずれも全くなく、
ただただ、自分自身の情けなさだけでした。

今後もクイズは続けるつもりですし、クイズ自体は楽しめています。
ですが、一体あとどのくらいの勉強をすればいいのか、どのような勉強をすればいいのかについて、さらに悩むことになった1日でした。

なお、最後に、今回のブログは賢押杯 2016の大会関係者ならびに参加者のどなたを非難・批判するつもりのものでもなく、
ただただ、自己の力の無さを反省し、自分自身に感じた情けなさを忘れないために記載しただけのものです。

クイズをはじめて約2年たって

約2年前の2014年6月18日に行われたイベント「はじめてのクイズ2」が私の早押しクイズ初体験でした。
あれから約2年がたちましたが、もう2年もたったのかという思いと、まだ2年しかたっていないのかという思いが半々くらいです。

約2年がたって、さすがに2年前よりは強くなれたかなとは思いますが、まだまだ勉強する事ばかりだなというのが正直なところです。

ツイッターネームの@の以降の名前、「不器用誠実一直線」はクイズモンスターこと古川さんに付けていただいたものですが、
私のことを昔から知っている人は、(誠実なのかどうか、一直線なのかどうかはわかりませんが)不器用というのは私にぴったりだという人が多いです。
私は昔から物覚えが悪く、要領が悪かったから昔から私を知る人たちはそう思うのでしょう。

私はラボクイズの個人戦で1回戦を抜けるのに半年かかりました。
そんな私がオープン大会の予選を抜けられるようになるまでにはあと何年かかるのか正直分かりません。
あと3年、5年、もしかしたら10年かかっても抜けられない可能性も大いにあるでしょう。
一生無理な可能性だって十分あると思っています。

それでも日々勉強は続けていきたいと思います。
クイズは本当に楽しいですし、その楽しいクイズを私なんかと一緒にやってくださる人たちがいるから、
これまで以上に努力を積み重ねていきたいと思っています。

最後に、これからもみなさんよろしくお願いいたします。


GYM

今年から新たにはじめてみた趣味

私は多趣味な人間ではない。
私の趣味と呼べるものは、将棋、麻雀、クイズ、サッカー観戦。こんなところだろう。
どちらかというと、少ない趣味をこつこつ長く続けるタイプである。
そんな私が、今年から新たな趣味を始めようと思った。

それは囲碁。

実は、昔ほんの少しだが勉強したことがあり、ルールは知っており、弱いながらも普通に対局はできる。
しかし、いいとこ20級くらいの実力でやめてしまった。
そんな私が、今年の3月に行われた、Google DeepMind チャレンジマッチで、また囲碁に興味を持った。

大学院生時代(15年くらい前か)におぼろげに目標としていたこと。
(正確にはそれに向かい努力をしていなかったので目標とは呼べないが・・・妄想の類か)
それは将棋と囲碁どちらもアマ初段以上の棋力になる事だった。

将棋のほうの目標は達成した。
囲碁のほうも達成できるようにこつこつ頑張りたい。
何年かかるかわからないし、到達できない可能性のほうがおそらく高いだろう。
それでも1度やると決めたからには努力はしてみたいと思う。

自分は何をやるにも不器用で要領が悪いけど、こつこつとやり続けることは自分にもできる。
将棋も囲碁もクイズも麻雀も、自分のできる範囲で頑張っていきたい。
プロフィール

GYM

Author:GYM
FC2ブログへようこそ!

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
カウント数
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QR
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。