Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon.

Pages: 1-

important algorithms

Name: Anonymous 2017-10-29 20:05

func sleepsort(in []int) (out []int) {
ok := make(chan bool)
for _, v := range in {
go func(v int) {
time.Sleep(time.Duration(v) * time.Second)
out = append(out, v)
ok <- true
}(v)
}
for range in { <-ok; }
return
}

Name: Anonymous 2017-10-29 20:05

I can't read this.

Name: Anonymous 2017-10-29 20:48

Please use [code] tags.

Name: Anonymous 2017-10-30 4:11

func sleepsort(in []int) (out []int) {
ok := make(chan bool)
for _, v := range in {
go func(v int) {
time.Sleep(time.Duration(v) * time.Second)
out = append(out, v)
ok <- true
}(v)
}
for range in {
<-ok
}
return
}

Name: Anonymous 2017-10-30 18:23

#include <stdio.h>
#include <time.h>
#include <omp.h>

void sleep(long ticks) {
long c;
for(c = clock(); c + ticks > clock(); ) {/* noop */}
}

void sleepsort(int *a, int n) {
int i;
omp_set_num_threads(n);
#pragma omp parallel for
for(i = 0; i < n; ++i) {
sleep(a[i]);
printf("%d\n", a[i]);
}
}

int main() {
int a[] = {725, 466, 589, 708, 349, 927, 17, 2, 28, 573};
sleepsort(a, sizeof(a) / sizeof(int));
return 0;
}

Name: Anonymous 2017-10-30 22:07

map{if(!fork){sleep$_;print$_.$/;exit}}@ARGV;0while(wait>=0)

Don't change these.
Name: Email:
Entire Thread Thread List