Skip to content

Instantly share code, notes, and snippets.

View bananaumai's full-sized avatar
🙄

bnn bananaumai

🙄
  • MODE, Inc.
  • Tokyo
View GitHub Profile
const delayed_yeah = () => {
console.log('delayed_yeah!')
return new Promise((resolve, reject) => {
setTimeout(() => resolve('yeah!'), 2000)
})
}
const delayed_hi = () => {
console.log('delayed_hi!')
return new Promise((resolve, reject) => {
@bananaumai
bananaumai / 1129.hs
Last active January 20, 2017 14:27
AOJ-ICPC
-- http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=1129
-- http://judge.u-aizu.ac.jp/onlinejudge/review.jsp?rid=2162974#1
main :: IO ()
main = do
s <- getContents
mapM_ print $ solve (strings2ds s) []
solve :: [[Int]] -> [[Int]] -> [Int]
solve ([0, 0]:_) acc = map head $ reverse acc
solve datasets acc = solve rest (result : acc) where
@bananaumai
bananaumai / longest-shiritori-pattern.hs
Last active February 7, 2017 03:56
プログラマ脳を鍛える数学パズル 問題14
import Data.List
main :: IO ()
main = print $ solve [ "def", "fdc", "abcd", "char", "hoge"]
solve :: [String] -> [String]
solve wrds = snd $ last $ sortOn fst $ map (\ws -> (calc ws, ws)) $ permutations wrds
calc :: [String] -> Int
calc [] = 0
module Main where
import Prelude (Unit, bind, unit, (+))
import Control.Monad.Eff (Eff)
import Control.Monad.Eff.Console (CONSOLE)
import Data.Maybe (Maybe(..))
import Data.Int (fromString)
import Web.Cookies (COOKIE, getCookie, setCookie)
main :: forall eff. Eff (console :: CONSOLE, cookie :: COOKIE | eff) Unit
import Data.List as List
import Data.Map as Map
import Data.Maybe as Maybe
import Data.Sequence as Seq
import Data.Set as Set
maze = "#S######.#" ++
"......#..#" ++
".#.##.##.#" ++
".#........" ++
@bananaumai
bananaumai / file0.js
Last active October 12, 2017 02:38
Slack Realtime Message APIをRx.Observableにする ref: http://qiita.com/bananaumai/items/fbcc0cb86208cce5d379
var Rx = require('rx');
var RtmClient = require('@slack/client').RtmClient;
var CLIENT_EVENTS = require('@slack/client').CLIENT_EVENTS;
var botToken = process.env.SLACK_BOT_TOKEN;
var rtm = new RtmClient(botToken);
o :: Ord a => a -> a -> Bool
o x y = x >= y
e :: Eq a => a -> a -> Bool
e x y = x == y
f :: Ord a => (a -> a -> Bool) -> a -> a -> String
f cmp x y = if cmp x y then "YES" else "NO"
main :: IO ()
@bananaumai
bananaumai / prime.rs
Last active March 24, 2019 15:01
rust code example - find prime numbers
use std::collections::HashMap;
fn primes(n: usize) -> Vec<usize> {
if n < 2 {
return vec![];
}
if n == 2 {
return vec![2];
}
@bananaumai
bananaumai / fib.rs
Last active March 24, 2019 15:02
rust code example - fibonacci generator
fn fib(n: usize) -> Vec<u64> {
let mut fibs = Vec::new();
while fibs.len() < n {
let current = match fibs.len() {
0 => 0,
1 => 1,
_ => {
fibs.iter().rev().take(2).sum()
}
@bananaumai
bananaumai / MainActivity.kt
Created October 11, 2019 14:42
Sensor Flow with lifecycleScope
@ExperimentalCoroutinesApi
class MainActivity : AppCompatActivity() {
private var working = false
private var job: Job? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val button = findViewById<Button>(R.id.button)