RUPC (Ritsumeikan University Programming Contest) 2011 Problem B Problem B
問題
日本語なので本文参照。(http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=2282)
方針
シミュレートする。
ソースコード
int n,m,a[1000]; int main() { while(cin>>n>>m,n){ rep(i,n)cin>>a[i]; int t=inf, d=0, ans=-1; rep(i,n-1){ for(int j=0;j*a[i]<=m;j++){ if(t<j*a[i]||t==j*a[i]&&d<=a[i]){ if(t==j*a[i]&&d==a[i])ans=n-1; goto NEXT; } } t=m/a[i]*a[i]; d=a[i]; ans=i; NEXT:; } if(ans!=n-1){ for(int j=0;j*a[n-1]<=m;j++){ if(t<j*a[n-1]||t==j*a[n-1]&&d<a[n-1]){ goto END; } } ans=n-1; END:; } cout<<ans+1<<endl; } return 0; }