2017-10-01から1ヶ月間の記事一覧

1241: Lagrange's Four-Square Theorem

ラグランジュの四乗定理なんて初めて聞いた。。。 2^15より小さくて四乗未満だから動的計画法でなんとかなりそうと思って適当に漸化式作ってみる ans[i][j]と置いてiは入力した求めたい合計の値、jは2乗の何個の和であるか(0 2乗の値はあらかじめ2^15までで…

2300: Calendar Colors

英語の時点で辛かった。ただ翻訳に投げて内容を掴めたら、NとMが小さいことからそれぞれの累乗和をあらかじめに計算しておき、後は全探索でなんとかなりそうってなって、なんとかなった。O(2^N) double d(double a,double b){ return (a-b)*(a-b); } int mai…

2706: Let's Solve Geometric Problems(幾何問題を解こう)

「幾何問題かよ、やる気無くすわ」って思ったら全然幾何もんじゃなかった件、しかもそんなに法則見つけるのも難しくなく、素因数分解の要領でなんとかなる。 ただ最初は全然TLEが取れずなんでだろうと思ったらi*i int gcd(int a,int b){ if(b==0)return a; r…

1610: Bamboo Blossoms(竹の花)

最初は7368791なんて大きさの配列作れないやんけ終わったと思って一時間以上考えたけど分からず、やけくそでエラトステネスの篩でやったら通った。配列ってどの大きさまで入るんや、、、単なる知識不足。 エラトステネスの篩って本当に便利 int MAX = 736879…

2700: Airport Codes(空港コード)

それぞれの文字列に対してkにおける操作をして、setで管理したらなぜか通った。setの計算量が未だによくわかってないのに乱用していて良くない。 int gcd(int a,int b){ if(b==0)return a; return gcd(b,a%b); } int main(){ int p,q; cin>>p>>q; int r=gcd(…