マグロマグロ
マクロを使わずに書いてみたところ、結局101Bになりました。で、現在はというとkurimuraさんが98B(!!!)、shinhさんが100B(!!)。こんな変態的な記録は、きっとマクロは使ってないと思われます。私はマクロネタとして昨日からあれこれ悩んでいますが、結局107B以下のコードが書けませんでした。かなりイイ線行ってたのに、やっぱり無理なんでしょうかね。あと数バイトは縮めておきたい気がするのですが・・・。
まず一つ目の108Bコードは、以前にも少し書きましたが
#import<algo.h> #define A next_permutation(a,a+strlen(a));); char a[9]; main(){ for(cin>>a;A for(;puts(a),A }
next_permutationを2回使う方法。putsの部分の処理がうまくいけば大幅に縮むのですが、ちょっと厳しい。
もう一つのアイデア。
#import<algo.h> #define A a,a+strlen(a)) char a[9]; main(){ cin>>a;for(sort(A;puts(a),next_permutation(A;); }
素直にソートしてからnext_permutationを使います。どちらの関数も、引数の形が同じなのでマクロを使用してみたわけですが・・・。