2012-03-28から1日間の記事一覧

JOI 春合宿 2007 Day1 Mall

JOI

解法 2次元累積和を用いる.人が住んでいる場所は10^8以上の数字にすればよい. 実装(C++) #include <cstdio> using namespace std; typedef long long lli; const lli INF=1000000001; lli MAP[1000][1000],SUM[1001][1001],_SUM[1001][1001]; int W,H; int a,b; in</cstdio>…

JOI 春合宿 2007 Day1 Factorial

JOI

解法 nに√nよりも大きい素因数が含まれていたらそれが解.そうじゃないのならmod n=0になるまで階乗を計算する 実装(C) int n,m,t,mod=1,i; int main(){ scanf("%d",&n); t=n; for(i=2;i*i<=n;i++) while(t%i==0) t/=i; if(t++==1) for(;mod;t++) mod=(long …

JOI 春合宿 2007 Day1 Score

JOI

解法 ヒストグラムを作り,各点数の順位を求める 実装(C++) #include <cstdio> int n,hist[101],s[100000],res[101]; int main() { scanf("%d",&n); for(int i=0;i<n;i++){ scanf("%d",s+i); hist[s[i]]++; } for(int i=100,j=1;i>=0;i--){ res[i]=j; j+=hist[i]; } for(int i=0;i</n;i++){></cstdio>

Codeforces 168B

解法 行の開始文字と空行の有無に応じて分岐をする.Javaの場合はStringBuilderを使わないと間に合わない. 実装(Java) import java.util.*; import java.math.*; import java.io.*; import java.util.regex.*; import static java.lang.Math.*; import stat…

Codeforces 168A

問題概要 n人の市民からなる街がある.デモがあり,それが認められるためにはy%の人が参加しないとならない. n人のうちx人がデモに参加するとして,後何人いればデモが認められるか求めよ