問題はこちら
No.279 木の数え上げ - yukicoder
「tの個数」「rの個数」「(eの個数)/2」の中で一番小さいものが答え
#define min(a,b)(a<b?a:b) int main(){ int i,a[127]={}; char s[1000010]; gets(s); for(i=0;s[i];i++)a[s[i]]++; a['e']/=2; printf("%d",min(min(a['e'],a['t']),a['r'])); return 0; }
minを書くのが大変なので、eがa[0]に入るようにindexをずらす
aの要素数は書かなくてもどうにかなるらしい
j,a[]; main(i){ for(;i=getchar()-10;j=a[15])a[i-91]++; *a/=2; j=!printf("%d",*a<(i=a[13])?j<*a?j:*a:i<j?i:j); }
106B
for(;read(0,&i,1);j=a[15])a[i-101]++;
とするとRE
16/06/06追記
fminの存在を忘れていた
i,a[9];main(){for(;i=getchar()-10?:!printf("%d",i=fmin(fmin(*a/2,a[13]),a[15]));a[i-91]++);}
a[]ではRE
さらに出力フォーマットの"%.0f"は"%.f"と書けるので
i,a[9];main(){for(;i=getchar()-10?:!printf("%.f",fmin(fmin(*a/2,a[13]),a[15]));a[i-91]++);}
として91B