Activity for Lundinâ€
Type | On... | Excerpt | Status | Date |
---|---|---|---|---|
Article | — |
The Tannenbaum series A series of 7 single digits, that if added in sequence to create an unbalanced binary search tree, is considered a Tannenbaum series, in case: - the left branch of the root has depth 3 and consists of ever-increasing numbers, and - the right branch of the root has depth 3 and consists of ever-de... (more) |
— | over 4 years ago |
Edit | Post #279856 |
Post edited: Save 1 space by moving return inside the x macro list |
— | over 4 years ago |
Comment | Post #279856 |
Amusingly, this is "Y macros", not "X macros"... because X didn't sit well with Roman numerals. I got trouble in one version of the code that used `X(10,X)` :) (more) |
— | over 4 years ago |
Edit | Post #279856 | Initial revision | — | over 4 years ago |
Answer | — |
A: Integer to Roman numeral C (compliant), 197 198 bytes. Golfed version of the function in the question, using X macros: ```c #define L Y(1000,M)Y(900,CM)Y(500,D)Y(400,CD)Y(100,C)Y(90,XC)Y(50,L)Y(40,XL)Y(10,X)Y(9,IX)Y(5,V)Y(4,IV)Y(1,I)return r; #define Y(n,R)for(;v>=n;v-=n)strcat(r,#R); char r[99];charf(int v)... (more) |
— | over 4 years ago |
Edit | Post #279820 | Initial revision | — | over 4 years ago |
Question | — |
Integer to Roman numeral The task is to take a decimal integer as input and print the corresponding Roman numeral with capital letters. The program must handle all positive integer numbers between 1 and 1000. Input can be assumed to be correct and no error handling is necessary. Example data: ``` Input Output 1 ... (more) |
— | over 4 years ago |
Edit | Post #279817 | Initial revision | — | over 4 years ago |
Answer | — |
A: "Hello, World!" LOLCODE, 37 bytes HAI 1 VISIBLE "Hello, World!" KTHXBYE Try it online! (more) |
— | over 4 years ago |
Comment | Post #279797 |
I went ahead and proposed a [move post between different categories feature request](https://meta.codidact.com/questions/279815). It would be generally handy to have, I think. (more) |
— | over 4 years ago |
Comment | Post #279797 |
Great idea. Although... is there a point in archiving old, finalized sandbox posts? Otherwise I believe that the best solution would make it possible for the poster move the post between categories, from sandbox to live challenges. (more) |
— | over 4 years ago |
Edit | Post #279722 |
Post edited: |
— | over 4 years ago |
Edit | Post #279814 |
Post edited: Got rid of break |
— | over 4 years ago |
Edit | Post #279814 | Initial revision | — | over 4 years ago |
Answer | — |
A: Prime Difference C (gcc), 126 129 bytes ```c N=9999;f(n){int p[N],i,j,P;memset(p,1,N);for(i=P=2;ii=n?j=N:(P=i);}e:return P;} ``` Try it online! This is an integer input/output function solution. The upper limit of prime number supported is the square root of`N`, so currently it counts prime numbers up to 9... (more) |
— | over 4 years ago |
Comment | Post #279755 |
However, chasing down a specific poorly-specified program output to a certain compiler, system + options could perhaps be an interesting and very different challenge. If you write a program that purposely does something bad, resulting in crazy results, then task people to find a system and compiler t... (more) |
— | over 4 years ago |
Comment | Post #279755 |
A problem with your example is that can only be reproduced with a non-standard compiler for that language. So you would have to specify to what extent non-standard language extensions are allowed and if your program relies on them... which in turn would be a major spoiler. Running `main;` on a confor... (more) |
— | over 4 years ago |
Comment | Post #279759 |
@Quintec†That's a l (L). And yeah the reason that l and 1 look identical on some fonts is the reason why one shouldn't name identifiers like that. (more) |
— | over 4 years ago |
Comment | Post #279754 |
Isn't it a big problem that the robbers can just "brute force" it with trail & error by trying online compilers until they find a match? (more) |
— | over 4 years ago |
Comment | Post #279759 |
And yeah `(int){8<88}<<8` can be rewritten as `1<<8` or `u'\xff'+!!u'\xff'` as `u'\xff'+1` but I'm saving the 1 for a rainy day. (more) |
— | over 4 years ago |
Edit | Post #279759 | Initial revision | — | over 4 years ago |
Answer | — |
A: Output 256 in many different ways C, 8 solutions Standard C, no extensions. 1 solution snippet per line: ```c "llll"[3]^33^333 4444 5555-555-555-555-555-555-555-555-555-555-55-55-55-55-55-5-5-5-7-7 6666/26 (int){8<88}<<8 u'\xff'+!!u'\xff' 0XFFFFFeFF LINE ``` Somewhat naive solution so far, but the nu... (more) |
— | over 4 years ago |
Comment | Post #279743 |
If snippets are ok, what about necessary libs to make the snippet run? That is, to access some language features I would strictly speaking have to include/import etc a lib. (more) |
— | over 4 years ago |
Edit | Post #279722 | Initial revision | — | over 4 years ago |
Article | — |
Integer to Roman numeral The task is to take a decimal integer as input and print the corresponding Roman numeral with capital letters. The program must handle all positive integer numbers between 1 and 1000. Input can be assumed to be correct and no error handling is necessary. Example data: ``` Input Output 1 ... (more) |
— | over 4 years ago |
Comment | Post #279679 |
Oh, and `t` actually doesn't have to be char. So with gcc implicit int abuse, this should be possible: `t;f(char*s){s[1]?f(s+1):0;for(t=*s;s[1];*++s=t)*s=s[1];}`. (more) |
— | over 4 years ago |
Comment | Post #279679 |
Also, switching `while` with `for` will save you lots. `for(char t=*s;s[1];*++s=t;)*s=s[1];` should work. So how about this? `f(char*s){s[1]?f(s+1):0;for(char t=*s;s[1];*++s=t)*s=s[1];}`, 59 bytes. (more) |
— | over 4 years ago |
Comment | Post #279679 |
I think this might be a possible improvement: `f(char*s){s[1]?f(s+1):0;while(s[1]){char t=*s;*s=s[1];*++s=t;}}}`. In case s[1] is a character, it makes the recursive call and then while loop. If not, a `0;` dummy statement. `s[1]` is zero in that case so the while loop isn't executed. (more) |
— | over 4 years ago |
Comment | Post #279657 |
`*p=b+strlen(gets(b))` works too but gives identical size. (more) |
— | over 4 years ago |
Edit | Post #279657 |
Post edited: |
— | over 4 years ago |
Edit | Post #279657 | Initial revision | — | over 4 years ago |
Answer | — |
A: Reverse an ASCII string C (gcc), 62 bytes main(){char b[99],p=strchr(gets(b),0);for(;p-->b;)putch(p);} This relies on the usual gcc extension abuse. It assumes that max user input is 98 characters + null term, since this wasn't specified. EDIT: Revisited, function-based equivalent of the above (plus I have ... (more) |
— | over 4 years ago |
Comment | Post #279639 |
Max length of input string? (more) |
— | over 4 years ago |
Comment | Post #279635 |
Probably a good idea. If the OP makes an attempt to write the non-golfed version of the challenge, then they'll realize various requirements that need to be addressed. (more) |
— | over 4 years ago |
Comment | Post #279601 |
What's the upper limit to number of items supported and the values themselves? Does it need to cover negative numbers? (more) |
— | over 4 years ago |
Comment | Post #279426 |
How can you say that it relies on non-standard extensions while lecturing me about the standard at the same time? It's either, not both at once. (more) |
— | over 4 years ago |
Comment | Post #279415 |
I think this is kind of cheating since that online compiler declares a main() elsewhere. Otherwise you could improve it to `m(){m();}`, 9 bytes, a recursive call that will eventually stack overflow with seg fault (more) |
— | over 4 years ago |
Comment | Post #279383 |
Nice solution since it's quite straight-forward, +1. I managed 108 bytes with same compiler settings (default gcc) but a much more obscure solution [here](https://codegolf.codidact.com/a/279365/279534). (more) |
— | over 4 years ago |
Answer | — |
A: 1, 2, Fizz, 4, Buzz! C (gcc), 108 bytes ```c h,i;main(){for(;i++<100;){char s[]="%dFizzBuzz ",b=i%5;h=s+2;printf(s+(i%3?b?h=32,0:6:b?h[1]=32,2:2),i);}} ``` Godbolt. Works on clang too. Contains some serious abuse of all that is holy: gcc extensions, misaligned writes, endianess, poorly-defined behavior... New... (more) |
— | over 4 years ago |
Comment | Post #279479 |
Then maybe the Q&A category needs to be "seeded" with some example questions so that people understand what it's for. The current help for categories and FAQ on this site isn't helpful. (more) |
— | over 4 years ago |
Comment | Post #279467 |
Seems to me like the majority of such questions should be asked on meta rather than Q&A. Otherwise this site has main site + 2 layers of meta... (more) |
— | over 4 years ago |
Edit | Post #279466 | Initial revision | — | over 4 years ago |
Answer | — |
A: What is the Q&A category for? I was thinking the same thing. Maybe instead there should be one category for code golf and leave the main Q&A is for other types of challenges and puzzles? (more) |
— | over 4 years ago |
Comment | Post #279382 |
But essentially they are lying just to pose and feel good about themselves. If you post an ill-formed, non-conforming program in "language X", that also relies on non-standard extensions, you are actually not programming in language X but in something else. That gives them an unfair advantage to thos... (more) |
— | over 4 years ago |
Comment | Post #279408 |
default-rules then? (more) |
— | over 4 years ago |
Edit | Post #279461 |
Post edited: |
— | over 4 years ago |
Edit | Post #279461 | Initial revision | — | over 4 years ago |
Answer | — |
A: Bytes to Segfault C (compliant), 19 bytes (`gcc -std=c18 -pedantic-errors`) ```c int main(){main();} ``` Godbolt (more) |
— | over 4 years ago |
Comment | Post #279408 |
This sounds reasonable enough, especially if help files can get kept up to date to match community consensus on meta. Maybe "code-golf-rules" or "challenge-rules" are better tag names though? Since standards might be confused with formal language standards. (more) |
— | over 4 years ago |
Comment | Post #279426 |
Apart from using deprecated gcc extensions, this is non-conforming/ill-formed C++ with several constraint violations. (more) |
— | over 4 years ago |