タグ

ブックマーク / qiita.com/cielavenir (24)

  • Rubotyでwandboxの採点を行う - Qiita

    URL Config WANDBOX_BASE: Wandboxのベース。 指定がなければhttp://melpon.org/wandbox/ 最初のhttp://は必要。最後のスラッシュはあってもなくても良い。 Usage /wandbox list/ コンパイラ一覧を返す。 gcc-head: warning,optimize,cpp-verbose,boost-nothing,boost-1.47,boost-1.48,boost-1.49,boost-1.50,boost-1.51,boost-1.52,boost-1.53,boost-1.54,boost-1.55,boost-1.56,sprout,c++98,gnu++98,c++11,gnu++11,c++1y,gnu++1y (snip) /wandbox setinput ?(?<input_uri>\S*)/ std

    Rubotyでwandboxの採点を行う - Qiita
    kasumani
    kasumani 2014/12/18
    Rubotyでwandboxの採点を行う id: wandbox ID(空文字列なら直前のsubmitで返されたIDを使用 ※現在permlinkを保存しない設定なので特に意味は無い) Tags: feedly, ifttt, recently read, saved for later from Pocket December 18, 2014 at 05:35PM via IFTTT
  • Rubotyでideoneの採点を行う - Qiita

    https://github.com/cielavenir/codeiq_problems/blob/master/q1169/check.rb をRuboty対応してみた。 URL Base ruboty-gen gemを使いましたが、Handlerが状態を持つため、Actionはバッサリ削除してしまいました。 こういう場合、どうするのが良いのでしょうね。 あと、gemspecに書いてあるとおり、savonが必要です。 Config IDEONE_USER/IDEONE_PASS: ideoneのユーザー名とAPIパスワード。 同じユーザー名からは1ヶ月に1000回しかAPIリクエストできないらしい?ので注意。 [150109追記] APIパスワードについて 150107の更新により、APIパスワードの設定が必要になりました。 ideoneのフッターの「api」をクリックします。 Pay

    Rubotyでideoneの採点を行う - Qiita
    kasumani
    kasumani 2014/12/14
    Rubotyでideoneの採点を行う ruboty-gen gemを使いましたが、Handlerが状態を持つため、Actionはバッサリ削除してしまいました。 こういう場合、どうするのが良いのでしょうね。 Tags: feedly, ifttt, recently read, saved for later from Pocket December
  • About stdio.h header in C++ - Qiita

    C++におけるstdio.hヘッダについて I wondered why I can use cstdio API with including only iostream. iostreamをインクルードしただけでcstdioが使用可能になる点について疑問に思ったので調べてみました。 OSX (BSD) I browsed c++ headers and found following path:

    About stdio.h header in C++ - Qiita
    kasumani
    kasumani 2014/10/14
    About stdio.h header in C++ iostreamをインクルードしただけでcstdioが使用可能になる点について疑問に思ったので調べてみました。 So, including iostream, ios or iterator is enough for stdio... Tags: ifttt, kasumaniのストックした投稿 - qiita from Pocket Oc
  • yhpgの「異星の電光掲示板」をSwiftで - Qiita

    標準入力の取り方がわかったので。Cの答案を書き換えてみた。 yhpgのSwift答案は初だと思う。 コンパイル方法は http://qiita.com/cielavenir/items/abcf982d2695b357dd5b を参考に。 採点プログラムはv1(C++)とv2(Ruby)両方使える。 #!/usr/bin/env xcrun -sdk macosx10.10 swift //http://qiita.com/Nabetani/items/cba03c96d1ea55f6e861 //http://nabetani.sakura.ne.jp/hena/ord15elebubo/ import Darwin var v:[UInt]=[0,0] // I cannot specify the array size... var i=0,j=0 for ;(withUnsafeP

    yhpgの「異星の電光掲示板」をSwiftで - Qiita
    kasumani
    kasumani 2014/10/11
    yhpgの「異星の電光掲示板」をSwiftで Tags: ifttt, kasumaniのストックした投稿 - qiita from Pocket October 11, 2014 at 09:03PM via IFTTT
  • めぐるセル - Qiita

    一瞬びびってしまったが、鍋谷さんの仰る通り確かに楽でした。 (backports gemが必要ですが)Ruby 1.8でも動作します。 それなりにDRYにしたつもり。 #!/usr/bin/env ruby #http://qiita.com/Nabetani/items/636fce060e1ebbc95f9b #http://nabetani.sakura.ne.jp/hena/ord25rotcell/ if RUBY_VERSION<'1.9' require 'rubygems' require 'backports' # (Math.cbrtと異なり)1.8のArray#rotateはbackportsに存在するので、ありがたく使わせて頂きます end if $0==__FILE__ STDOUT.sync=true while gets str='' area=[*'a'..

    めぐるセル - Qiita
    kasumani
    kasumani 2014/09/07
    めぐるセル Tags: ifttt, kasumaniのストックした投稿 - qiita from Pocket September 07, 2014 at 08:48AM via IFTTT
  • 多段階選抜 (Go/C#/Ruby/Python) - Qiita

    [140805] cbrt直しました。あとPy3の不具合修正。 全て無限リストです。 鍋谷さんからDRYになっていないという指摘を受けたので、リファクタリングしました。 Githubのコミットログ。 https://github.com/cielavenir/procon/commit/752122c53288d8428dc4aadfbdfae7eac151eea2 なんと平均25行の削減に成功しました。 ところでGoとC#には関数の部分適用を行うメソッドってないんですかね? //usr/bin/env go run $0 $@;exit // http://qiita.com/Nabetani/items/1c83005a854d2c6cbb69 // http://nabetani.sakura.ne.jp/hena/ord24eliseq/ package main import (

    多段階選抜 (Go/C#/Ruby/Python) - Qiita
    kasumani
    kasumani 2014/08/06
    多段階選抜 (Go/C#/Ruby/Python) 全て無限リストです。 鍋谷さんからDRYになっていないという指摘を受けたので、リファクタリングしました。 Tags: ifttt, kasumaniのストックした投稿 - qiita from Pocket August 06, 2014 at 10:44AM via IFTTT
  • 多段階選抜 (C#/Python)(旧) - Qiita

    発表会中に、「IEnumerableを使えばできるかも」と言ってしまったので、言い出しっぺの法則。 cbrtはDllImportのため環境依存。 イテレータの作り方は増井氏の最短経路の計算( http://qiita.com/cielavenir/items/ac96da5e3040c2edb78c )でやったけど、やはり面倒。 ところで、C#でできるってことはVB2012以降でも可能ってことだけど、労力が半端無いので止め。上に挙げた最短経路の計算のソースをうまく使えば作れるかも。とのみ。 あとはJava。でもStreamはようわからんのよね。 Stream.generateはコルーチンでないのでだめそうです。てかEnumeratorに該当するものがない気がする。 using System; using System.Linq; using System.Collections.Gener

    多段階選抜 (C#/Python)(旧) - Qiita
    kasumani
    kasumani 2014/08/06
    多段階選抜 (C#/Python) 発表会中に、「IEnumerableを使えばできるかも」と言ってしまったので、言い出しっぺの法則。 Tags: ifttt, kasumaniのストックした投稿 - qiita from Pocket August 06, 2014 at 10:43AM via IFTTT
  • Garbage-collecting BOINC (remove old version apps) - Qiita

    Boinc applications are sometimes updated and old ones still remain in data directory. Although the server might discard new ones later, usually old ones are just waste of the storage. This Ruby script will garbage-collect the data directory. #!/usr/bin/env ruby #BOINC Garbage Collector (remove old files) if ARGV.empty? or ARGV[0]!='--yes' dry=true puts 'Usage: boinc_gc.rb [--yes]' puts 'without --

    Garbage-collecting BOINC (remove old version apps) - Qiita
    kasumani
    kasumani 2014/07/30
    Garbage-collecting BOINC (remove old version apps) Boinc applications are sometimes updated and old ones still remain in data directory. Although the server might discard new ones later, usually old ones are just waste of the storage. This Ruby script will garbage-collect the data directory. Tags: i
  • paiza learningの足し算問題が解けない - Qiita

    paiza learningの足し算問題。内容は、「半角スペースで区切られた2数を足して標準出力に出す」というもの。 pxemだと、「._._.+.nak.-.o.pxem」と書ける。 これがBash単体だとどうしても解けない。

    paiza learningの足し算問題が解けない - Qiita
    kasumani
    kasumani 2014/07/21
    paiza learningの足し算問題が解けない paiza learningの足し算問題。内容は、「半角スペースで区切られた2数を足して標準出力に出す」というもの。 pxemだと、「._._.+.nak.-.o.pxem」と書ける。 Tags: ifttt, kasumaniのストックした投稿 - qi
  • スマホでideoneの編集を安全に行う - Qiita

    以下はISW13HTでのスクショですが、iOSでも可能です。 移動中に電池切れになったので電気屋のiPhoneで仕上げしたんですよね…w yhpg答案のコードですが、気にしないこと。 このコード編集したいなぁ。 あれ、真っ白になっちゃいました。 そんな時は、慌てずに、「syntax highlight」のチェックを外しましょう。 あとはideone it!を押せば、編集後のコードが実行されます。 Register as a new user and use Qiita more conveniently You get articles that match your needsYou can efficiently read back useful informationYou can use dark themeWhat you can do with signing up

    スマホでideoneの編集を安全に行う - Qiita
    kasumani
    kasumani 2014/07/12
    スマホでideoneの編集を安全に行う 2 Stock 1 Comment Stock this post 以下はISW13HTでのスクショですが、iOSでも可能です。 移動中に電池切れになったので電気屋のiPhoneで仕上げしたんですよね…w yhpg答案のコードですが、気にしない
  • くねくね増加列 - Qiita

    携帯だけで書いた下書き:http://ideone.com/36z2ZE メモ化再帰にもっていけたのは「長くなるように、増え続けるように」(140805追記)のおかげだと思っています。 #!/usr/bin/env ruby #http://qiita.com/Nabetani/items/7ba11167ea28c929fcf2 #http://nabetani.sakura.ne.jp/hena/ord23snakemoinc/ class Hena23 def initialize(a) @a=a @memo={} end def dfs(x,y,nprev) return 0 if x<0||@a[0].size<=x || y<0||@a.size<=y || @a[y][x]<=nprev return @memo[[x,y]]||=[[-1,0],[1,0],[0,-1],[

    くねくね増加列 - Qiita
    kasumani
    kasumani 2014/07/06
    くねくね増加列 メモ化再帰にもっていけたのは()のおかげだと思っています。 Tags: ifttt, kasumaniのストックした投稿 - qiita from Pocket July 06, 2014 at 08:14PM via IFTTT
  • ObjCの配列は参照渡しなので要素の変更が(デフォルトで)伝播する - Qiita

    ObjCでは@[a,b][1]に対する変更が元の変数に伝わるのに対し、C++では、std::vector<std::string>({a,b})[1]に対する変更は元の変数には伝わらない。*(std::vector<std::string*>({&a,&b})[1])のように、ポインタを介さなければならない。 いやまあ、単に参照渡しと値渡しの違いだけなんですが。 何が嬉しいかというと、たとえば2つのUILabelがあって、[@[a,b][n%2] setText:@"1"];とかやるのが容易ですよねってことで。 #import <Foundation/Foundation.h> #import <iostream> #import <string> #import <vector> int main(){ std::cout<<"ObjC"<<std::endl; { id myPool

    ObjCの配列は参照渡しなので要素の変更が(デフォルトで)伝播する - Qiita
    kasumani
    kasumani 2014/07/02
    ObjCの配列は参照渡しなので要素の変更が(デフォルトで)伝播する 0 Stock 0 Comment Stock this post ObjCでは@[a,b][1]に対する変更が元の変数に伝わるのに対し、C++では、std::vector({a,b})[1]に対する変更は元の変数には伝わらない。*(std::ve
  • [MinGW] Link pthread statically [Ubuntu] - Qiita

    ※MinGWアプリがlibwinpthread-1.dllを要求するのを(-staticせずに)防ぐには以下のスクリプトを実行します。※ In the latest, the very basic programs not-using threads are also linked to pthread. The worse is the library is libpthread.dll.a in default, which requires libwinpthread-1.dll runtime. Therefore, linking pthread statically is preferred. You can use -static of course, but I still wanted to use msvcrt.dll as C runtime. I use the U

    [MinGW] Link pthread statically [Ubuntu] - Qiita
    kasumani
    kasumani 2014/06/29
    Link pthread statically [Ubuntu] In the latest, the very basic programs not-using threads are also linked to pthread. The worse is the library is libpthread.dll.a in default, which requires libwinpthread-1.dll runtime. Therefore, linking pthread statically is preferred. Tags: ifttt, kasumaniのス
  • 「CodeIQ 2周年!」をIntercalで出力 - Qiita

    #!/usr/bin/ruby #coding:utf-8 STR="CodeIQ 2周年!\n" last=0 siz=STR.bytes.to_a.size please=(siz+3)/4-2 puts "DO ,1 <- ##{siz}" STR.each_byte.with_index{|e,i| c = e c = (c & 0x55) << 1 | (c & 0xaa) >> 1 c = (c & 0x33) << 2 | (c & 0xcc) >> 2 c = (c & 0x0f) << 4 | (c & 0xf0) >> 4 last2 = c c = (last-c)&0xff last = last2 print 'PLEASE ' if i<=please puts "DO ,1 SUB ##{i+1} <- ##{c&0xff}" } puts 'PLEASE R

    「CodeIQ 2周年!」をIntercalで出力 - Qiita
    kasumani
    kasumani 2014/06/25
    「CodeIQ 2周年!」をIntercalで出力 1 ストック 0 コメント この投稿をストックする codeiq2nd_intercal.rb #!/usr/bin/ruby #coding:utf-8 STR=&quot;CodeIQ 2周年!\n&quot; last=0 siz=STR.bytes.to_a.size please=(siz+3)/4-2 puts &quot;DO ,1 &lt;- ##{siz}&quot; STR.each_byte
  • 「CodeIQ 2周年!」をWhiteSpaceで出力 - Qiita

    #!/usr/bin/ruby #coding:utf-8 def gen_label(n) raise 'gen_label' if !n.is_a?(Integer) || n<0 n.to_s(2).tr('01'," \t")+"\n" end def gen_number(n) raise 'gen_number' if !n.is_a?(Integer) (n<0 ? "\t" : ' ')+gen_label(n.abs) end STR="CodeIQ 2周年!\n" STR.each_byte{|e| c = e print ' '+gen_number(c) print "\t\n " } #ideoneだと正常終了時に末端に変な出力がある。 #なのでCodeIQの問題では(一部例外を除き)正常終了させてはいけないというローカルルールがある。 #print "\n\n\

    「CodeIQ 2周年!」をWhiteSpaceで出力 - Qiita
    kasumani
    kasumani 2014/06/25
    「CodeIQ 2周年!」をWhiteSpaceで出力 なお、HaskellのputCharの仕様により、ローカル実行の場合はeach_codepointに変更してプログラムを生成しなおさなければなりません(怒)。 Tags: ifttt, kasumaniのストックした投稿 - qiita from Pocket June
  • using namespace stdに起因する誤作動をJava/C#でも - Qiita

    C++でusing namespace stdを使うと、衝突せずにコンパイルが通ってしまう場合があることを知った。 http://stackoverflow.com/questions/1452721/why-is-using-namespace-std-considered-bad-practice#1453605 例えばこんなコード。 #include <algorithm> #include <cstdio> //このmin関数はあってもなくてもコンパイルは通るが実行結果は全く異なる int min(int a,int b){return a+b;} using namespace std; int main(){ printf("%d\n",min(2,3)); return 0; }

    using namespace stdに起因する誤作動をJava/C#でも - Qiita
    kasumani
    kasumani 2014/06/23
    using namespace stdに起因する誤作動をJava/C#でも 衝突する場合しか知らなかったのですが、これは怖いですね…。 で、同じようなことをJava/C#でやってみたらできてしまったのでコードを紹介。 Tags: ifttt, kasumaniのストックした投
  • [WIP] [Chrome] RealDownloaderはなぜインストールできるのか - Qiita

    前:http://qiita.com/cielavenir/items/bbeb314d3a4abbd9bd24 TamperMonkeyの動作試験をしようと思って大学のWindowsChromeを開けたところ、RealDownloaderがインストールされていた。 35.0.1916.153 mではこれは不可能なはずなのに…。 ということはこれを再現できれば外部拡張のインストールが可能なのではないかと考えられた。 idhngdhcfkoamngbedgpaokgjbnpdijiをレジストリエディタで検索したところ、HKEY_LOCAL_MACHINE\Software\Google\Chrome\Extensions\idhngdhcfkoamngbedgpaokgjbnpdijiが見つかった。 同様の手法をMacBookAir上のWinServer2012R2(DreamSpark)

    [WIP] [Chrome] RealDownloaderはなぜインストールできるのか - Qiita
    kasumani
    kasumani 2014/06/16
    [Chrome] RealDownloaderはなぜインストールできるのか TamperMonkeyの動作試験をしようと思って大学のWindowsのChromeを開けたところ、RealDownloaderがインストールされていた。 35.0.1916. Tags: ifttt, kasumaniのストックした投稿 - qiita from Pocket
  • Loading EasyTether on demand - Qiita

    151110: For 10.10+ users Finally they have released new driver. However, the driver will be loaded automatically again via usual install. To install manually, unpkg http://www.mobile-stream.com/beta/darwin/easytether-yosemite-b8.pkg sudo mkdir /private/var/lib/easytether this is where adbkey is created (related to Android 4.2+ ADB authorization) copy usr/local/bin/easytether-usb to /usr/local/bin

    Loading EasyTether on demand - Qiita
    kasumani
    kasumani 2014/06/16
    EasyTetherを使いたい時だけロードする Abstract: EasyTether provides USB tethering even if the Android doesn't provide official tethering. However, installing EasyTether on OSX machine prohibits adb, which is awful for Android developers. Using kextload is a workaround. Tags: ifttt, kasum
  • 上と左の合計(再帰) - Qiita

    番で書いた汚いコードはこちら。http://qiita.com/cielavenir/items/ab6c3e9a482c7b42519e 番中に再帰は考えていたものの、焦ってしまい実装に手が回らなかった。 律儀にclassとしたが、Rubyはmainインスタンスにインスタンス変数を追加できるので必要ではなかったかもしれない。 #!/usr/bin/env ruby #http://qiita.com/Nabetani/items/34bf2a05099a47e193b6 #http://nabetani.sakura.ne.jp/hena/ord22irrpas/ class Hena22 def initialize(cells) @cells=cells @memo={} end def solve(x,y) return 0 if x<0||y<0 return 1 if x=

    上と左の合計(再帰) - Qiita
    kasumani
    kasumani 2014/06/11
    上と左の合計(再帰) 本番中に再帰は考えていたものの、焦ってしまい実装に手が回らなかった。 Tags: ifttt, kasumaniのストックした投稿 - qiita from Pocket June 11, 2014 at 02:57AM via IFTTT
  • 4つの数と四則と括弧 - Qiita

    問題:https://codeiq.jp/ace/nabetani_takenori/q820 括弧を付けるのを許容するならyield解法が使えるので、短く書けます。 一応Ruby 1.8/1.9両対応です。1.8だとRational(rational,rational)が定義されていないので工夫が必要でした。 #!/usr/bin/ruby #derived from AOJ 0041 require 'rational' class String def integer? Integer(self)!=nil rescue false end end def dfs(a,&block) return to_enum(:dfs,a) if !block_given? yield [a[0],a[0].to_s] if a.size<2 (a.size-1).times{|i| dfs(a

    4つの数と四則と括弧 - Qiita
    kasumani
    kasumani 2014/04/23
    4つの数と四則と括弧 括弧を付けるのを許容するならyield解法が使えるので、短く書けます。 一応Ruby 1.8/1.9両対応です。1.8だとRational(rational,rational)が定義されていないので工夫が必要でした。 Tags: ifttt, kasumaniのストックした