カメヲラボ

主にプログラミングとお勉強全般について書いてます

Rope(2)

  • とっても短いコード137B

最後はscanfを一回にして、無駄な変数を無くせば137バイトまで縮めることができる。

float s,a,b,c,d,x,y;
main(i){
  for(;~scanf("%f%f",&a,&b);c=a,d=b)
    s+=s?i?x=a,y=b,i=0:hypot(c-a,d-b):b*6.282;
  printf("%.2f",s+hypot(x-a,y-b));
}

iを使わずにインチキ臭い方法で通す方法も考えたが、テストケースが結構多いのか、うまくいかなかった。hinoeさんもこんな感じかな?