Skip to content

Instantly share code, notes, and snippets.

View 20chan's full-sized avatar
๐ŸŽธ
rockin'

20chan 20chan

๐ŸŽธ
rockin'
View GitHub Profile

๋น ๋ฅธ A+B in C#

๋ฌธ์ œ๋Š” ๋ฐฑ์ค€์˜ ๋น ๋ฅธ A+B

๋ณดํ†ต ์ด๋Ÿฐ ๋ฌธ์ œ๋Š” original.cs ์ฒ˜๋Ÿผ ์ฒ˜๋ฆฌํ•˜๋Š”๋ฐ ์ด๊ฑด ์‹œ๊ฐ„ ์ดˆ๊ณผ๊ฐ€ ๋œฌ๋‹ค ์ฝ˜์†” io๊ฐ€ ์กธ๋ผ๋ฆฌ ๋А๋ฆฌ๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค

์ผ๋‹จ ๊ธ€์— ๋‚˜์™€ ์žˆ๋Š” ์ถ”๊ฐ€ ์„ค๋ช…์„ ๋ด๋ณด์ž

์ œ์ผ ์ค‘์š”ํ•œ ๊ฑด ๋‹ค์Œ ๋ฌธ์žฅ๊ฐ™๋‹ค: endl์€ ๊ฐœํ–‰๋ฌธ์ž๋ฅผ ์ถœ๋ ฅํ•  ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์ถœ๋ ฅ ๋ฒ„ํผ๋ฅผ ๋น„์šฐ๋Š” ์—ญํ• ๊นŒ์ง€ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์ถœ๋ ฅํ•œ ๋’ค ํ™”๋ฉด์— ๋ฐ”๋กœ ๋ณด์ด๊ฒŒ ํ•  ์ˆ˜ ์žˆ๋Š”๋ฐ, ๊ทธ ๋ฒ„ํผ๋ฅผ ๋น„์šฐ๋Š” ์ž‘์—…์ด ๋งค์šฐ ๋А๋ฆฝ๋‹ˆ๋‹ค.

@20chan
20chan / parallelSum.benchmark.cs
Last active May 20, 2019 07:34
c# parallel sum ํผํฌ๋จผ์Šค ๋น„๊ต
using System;
using System.Diagnostics;
using System.Linq;
using System.Numerics;
using System.Threading;
using System.Threading.Tasks;
using BenchmarkDotNet.Attributes;
using BenchmarkDotNet.Running;
namespace simd_test {
@20chan
20chan / wdsolver_opt.md
Created May 16, 2019 15:48
express thru ์†”๋ฒ„ ์ตœ์ ํ™”ํ•˜๋Š” ๊ธ€

์†”๋ฒ„ ์ตœ์ ํ™”๋ฅผ ์œ„ํ•œ ๋ป˜์ง“ ์ •๋ฆฌ

ํ…Œ์ŠคํŠธ์šฉ ์Šคํ…Œ์ด์ง€: B10

XX 00 00 00 00 w3 00
00 00 00 00 00 00 00
00 00 W2 00 00 00 00
00 00 00 00 00 00 00
00 00 Y2 00 00 00 01
00 00 00 00 00 00 00
@20chan
20chan / unity_ios_build.md
Created May 15, 2019 02:39
์œ ๋‹ˆํ‹ฐ IOS ๋นŒ๋“œํ•˜๋Š”๋ฐ undefined symbol ๋“ฑ ์—๋Ÿฌ๋‚˜๋˜๊ฑฐ ์‚ฝ์งˆํ•œ ๊ธ€

IOS ๋นŒ๋“œ ์‚ฝ์งˆ์„ ํ•˜์ž

์ผ๋‹จ ๋ฌด์Šจ ์—๋Ÿฌ๊ฐ€ ์ƒ๊ฒจ์„œ pod์ด ์„ค์น˜๋˜์–ด ์žˆ์ง€ ์•Š์•„์„œ ์ƒ๊ธฐ๋Š” ๋ฒ„๊ทธ๋ผ๊ณ  ํ•ด์„œ pod์„ ์„ค์น˜ํ–ˆ๋‹ค

library not found for .. ์—๋Ÿฌ๊ฐ€ ๋œฌ๋‹ค

.xcodeproj ๋Œ€์‹  .xcworkspace ํŒŒ์ผ์„ ์—ด์–ด์•ผ ํ•œ๋‹ค๋Š” ๊ธ€์„ ๋ฐœ๊ฒฌํ–ˆ๋‹ค

๋‹ค๋ฅธ ๋ฌธ์ œ๊ฐ€ ์ƒ๊ฒผ๋‹ค

@20chan
20chan / 1
Created April 22, 2019 04:03
1
@20chan
20chan / trap_nation.txt
Last active April 18, 2019 09:29
Trap Nation youtube channel all videos title list
WEVLTH - REBORN
ReauBeau & Loris Cimino - Louder (feat. Twan Ray)
Flume & Eprom - Spring
Vanic - Forever Down ft. Saint Sinner & Wifisfuneral
Medii - Stand by Me (ft. Kristen Olsson)
N3WPORT - Whisper
Britney Spears - Break the Ice (Barren Gates Remix)
Jackal - Christ Person, Woman God
AWAY & Midoca - Too Close (feat. Dark Waves)
DROELOE - Snow Shovels
@20chan
20chan / disassembled.il
Last active January 29, 2019 02:09
Interface vs Generic where interface performance
.method private hidebysig static
void Say1 (
valuetype TrueAnswer t
) cil managed
{
// Method begins at RVA 0x2050
// Code size 9 (0x9)
.maxstack 8
IL_0000: ldarga.s t
@20chan
20chan / QuadraticEquation.cs
Created December 17, 2018 16:23
quadragtic equation solver
static num[] Solve(num a, num b, num c, num d, num e)
{
var p = b / (4 * a);
var q = (2 * c) / (3 * a);
var r = c * c - 3 * b * d + 12 * a * e;
var s = 2 * c * c - 9 * b * c * d + 27 * a * d * d + 27 * e * b * b - 72 * a * c * e;
var t = -(b.Pow(3) / a.Pow(3)) + (4 * b * c) / a.Pow(2) - (8 * d) / a;
var v_1 = (s + (-4 * r.Pow(3) + s.Pow(2)).Sqrt()).Sqrt3();
var v_2 = new num(2).Sqrt3();
var v_l = v_2 * r / (3 * a * v_1);
@20chan
20chan / async_io.md
Created November 6, 2018 09:00
https://cafbit.com/post/tokio_internals/ ์˜ Tokio Internals ๋ž€ ๊ธ€์„ ๋ณด๊ณ  ๋ฒˆ์—ญํ•˜๋‹ค ๋„ˆ๋ฌด ์–ด๋ ค์›Œ์„œ ๋•Œ๋ ค์ณค์Šต๋‹ˆ๋‹ค ํ‰คํ‰คํˆฌํ…Œํ…Œใ…”ใ…”

Tokio Internals: ๋Ÿฌ์Šค๋šœ์˜ ๋น„๋™๊ธฐ IO ํ”„๋ ˆ์ž„์›Œํฌ ๋ฐ”๋‹ฅ๋ถ€ํ„ฐ ํ•ฅ์•„๋จน๊ธฐ

Tokio๋Š” ๋น„๋™๊ธฐ IO๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š” ์–ดํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ฐœ๋ฐœ์„ ์œ„ํ•œ ๋Ÿฌ์ŠคํŠธ ํ”„๋ ˆ์ž„์›Œํฌ๋‹ค. ์ด๋Š” ์ด๋ฒคํŠธ ๊ธฐ๋ฐ˜ ์ ‘๊ทผ์œผ๋กœ ์ผ๋ฐ˜์ ์ธ ๋™๊ธฐ IO๋ณด๋‹ค ๋” ์ข‹์€ ํ™•์žฅ์„ฑ, ์„ฑ๋Šฅ ๊ทธ๋ฆฌ๊ณ  ์ž์› ์‚ฌ์šฉ์„ ๋ณด์—ฌ์ค€๋‹ค. ์•ˆํƒ€๊น๊ฒŒ๋„, tokio๋Š” ์ด์˜ ๋‚œํ•ดํ•œ ์ถ”์ƒํ™”๋กœ ์–ด๋ ต๊ธฐ๋กœ ์•…๋ช…์ด ๋†’๋‹ค. ์ด ํŠœํ† ๋ฆฌ์–ผ์„ ์ฝ๊ณ  ๋‚œ ๋’ค์—๋„ ๋‚˜๋Š” ์‹ค์ œ๋กœ ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋Š”์ง€ ์ถฉ๋ถ„ํžˆ ์ดํ•ดํ•˜์ง€ ๋ชปํ–ˆ๋‹ค.

๋‚ด ์ด์ „ ๋น„๋™๊ธฐ IO ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๊ฒฝํ—˜์ด Tokio๋ฅผ ๊ณต๋ถ€ํ•˜๋Š”๋ฐ ๋ฐฉํ•ด๊ฐ€ ๋˜๊ธฐ๋„ ํ–ˆ๋‹ค. ๋‚˜๋Š” ์šด์˜์ฒด์ œ์˜ ์„ ํƒ ๊ธฐ๋Šฅ (๋ฆฌ๋ˆ…์Šค์˜ epoll ๊ฐ™์€) ์„ ์‹œ์ž‘ ํฌ์ธํŠธ๋กœ ์žก๊ณ , ๊ทธ๋‹ค์Œ ๋””์ŠคํŒจ์น˜๋กœ, ์ƒํƒœ๋จธ์‹ , ..๋กœ ๊ฐ€๋Š” ๊ฒƒ์— ์ต์ˆ™ํ–ˆ๋‹ค. tokio์˜ ์ถ”์ƒํ™”๋ฅผ epoll_wait() ์ด ์–ด๋””์„œ ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋Š”์ง€ ์ดํ•ด์—†์ด ์‹œ์ž‘ํ•˜๋Š” ๊ฒƒ์€, ์กธ๋ผ ์–ด๋ ต๋‹ค. tokio์™€ future ๊ธฐ๋ฐ˜ ์ ‘๊ทผ์€ ๋ˆˆ ๊ฐ€๋ฆฌ๊ณ  ๊ฑท๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋А๊ปด์ง„๋‹ค.

tokio ๋ฅผ ๊ณต๋ถ€ํ•˜๊ธฐ ์œ„ํ•ด ํƒ‘๋‹ค์šด์œผ๋กœ ์ ‘๊ทผํ•˜๋Š” ๊ฑฐ๋ณด๋‹ค ๋ฐ”ํ…€์—…์œผ๋กœ ์†Œ์Šค์ฝ”๋“œ๋ฅผ ๊ณต๋ถ€ํ•˜๋Š”๊ฒŒ ์‹ค์ œ๋กœ ์ง€๊ธˆ์˜ ๊ตฌํ˜„์ด epoll ์ด๋ฒคํŠธ๋“ค์ด Future::poll()์˜ IO ์ ‘๊ทผ? ์†Œ๋น„? ๊นŒ์ง€ ๊ฐ€๋Š”์ง€ ์ดํ•ดํ•˜๋Š”๊ฒŒ ๋” ๋‚ซ๋‹ค๊ณ  ๊ฒฐ์ •ํ–ˆ๋‹ค. tokio ์™€ futures ์˜ ์ž์„ธํ•œ ํ•˜์ด๋ ˆ๋ฒจ ์‚ฌ์šฉ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์€ ๋“ค์–ด๊ฐ€์ง€ ์•Š์„ ๊ฒƒ์ด๋‹ค. ์ด๋ฏธ ์ถฉ๋ถ„ํžˆ ์ข‹์€ ํŠœํ† ๋ฆฌ์–ผ์ด ์žˆ์œผ๋‹ˆ๊นŒ.. ๋น„๋™๊ธฐ IO์˜ ์ผ๋ฐ˜์ ์ธ ๋ฌธ์ œ์— ๊ด€ํ•œ ๋‚ด์šฉ๋„ ์ฑ… ํ•œ๊ถŒ์œผ๋กœ ์“ฐ๊ธฐ์— ์ถฉ๋ถ„ํ•˜๊ธฐ์— ์งง์€ ์š”์•ฝ๋งŒ์œผ๋กœ ์„ค๋ช…ํ•˜๊ฒ ๋‹ค. ๋‚ด ๋ชฉํ‘œ๋Š” futures์™€ tokio์˜ polling์ด ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋Š”์ง€ ์ž์‹ ๊ฐ์„ ๊ฐ–๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•จ์ด๋‹ค.

๋“ค์–ด๊ฐ€๊ธฐ์ „์—, tokio๋Š” ์•„์ง ๊ฐœ๋ฐœ๋˜๊ณ  ์žˆ๋Š” ์ค‘์ด๊ธฐ์— ์—ฌ๊ธฐ ๋‚ด์šฉ์ค‘ ๋”์ด์ƒ ๋งž์ง€ ์•Š์€ ๋‚ด์šฉ์ด ์žˆ์„ ์ˆ˜๋„ ์žˆ๋‹ค. ์ด ๊ณต๋ถ€๋ฅผ ์œ„ํ•ด์„œ ๋‚˜๋Š” tokio-core 0.1.10๊ณผ futures 0.1.17, ๊ทธ๋ฆฌ๊ณ  mio 0.6.10์„ ์‚ฌ์šฉํ–ˆ๋‹ค. tokio-core ์˜ ์ด๋ฒคํŠธ ์‹œ์Šคํ…œ์€ ์ž์ฃผ ๋ฐ”๋€Œ๋‹ˆ๊นŒ ์ด์•ผ๊ธฐ๋ฅผ ์•ˆํ•˜๊ฒ ๋‹ค. ๋‚˜๋Š” tokio๋ฅผ ๋ฆฌ๋ˆ…์Šค์—์„œ ๊ณต๋ถ€ํ–ˆ๊ณ  ๋ช‡๋ช‡ ์ด์•ผ๊ธฐ๋“ค์€ epoll๊ฐ™์€ ํ”Œ๋žซํผ์— ์˜์กดํ•˜๋Š” ์„ธ๋ถ€์ ์ธ ๊ตฌํ˜„์€

@20chan
20chan / bubble.c
Last active October 30, 2018 09:00
๊ณ ๊ตฌ๋งˆ ํ• ๋กœ์œˆ ์ด๋ฒคํŠธ ๋ฒ„๋ธ” ์†ŒํŠธ
int i,n,t,l[IS];char*z=" %d"+21;b(){for(t=""[0]-7,n=IS;n-->(0[""]-8)&&t&&1+(t=0[""]-8);)for(i=0[""]-8;i<n;i++)t=l[i+0[""]-8]>l[i+1]?(l[0[""]-8+i]^=l[i+1],l[""[0]-7+i]^=l[i+0[""]-8],l[i]^=l[i+0[""]-7]),1:t;}i="main()"[0];main(){for(i=0[""]-8;i<IS;i+=0[""]-7)scanf("%d"+10,&l[i]);b("");for(i=0;i<IS;"{",i++)printf(("",i)?z:"%d"+8,l["",i]);t=("printf(""Hello, world!");}