「aoj2481~2490」の編集履歴(バックアップ)一覧はこちら

aoj2481~2490」(2013/03/20 (水) 15:25:54) の最新版変更点

追加された行は緑色になります。

削除された行は赤色になります。

*2489 Palindromic Number http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=2489 与えれた整数nに最も近い回文数を答えよという問題。 複数ある場合低い方を答えとせよ。 解法 簡単な問題なので全部生成してstd::setから探すだけです。 #include<stdio.h> #include<set> int main(){ std::set<int> memo; std::set<int>::iterator it; memo.insert(0); memo.insert(10001); for(int i=1;i<=9;i++){ memo.insert(i); memo.insert(i*10+i); for(int j=0;j<=9;j++){ memo.insert(i*100+j*10+i); memo.insert(i*1000+j*100+j*10+i); } } int n; scanf("%d",&n); it=memo.lower_bound(n); int ans1=(*it); it--; int ans2=(*it); printf("%d\n",n-ans2>ans1-n?ans1:ans2); }
*2489 Palindromic Number http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=2489 与えれた整数nに最も近い回文数を答えよという問題。 複数ある場合低い方を答えとせよ。 解法 簡単な問題なので全部生成してstd::setから探すだけです。 #include<stdio.h> #include<set> int main(){ std::set<int> memo; std::set<int>::iterator it; memo.insert(0); memo.insert(10001); for(int i=1;i<=9;i++){ memo.insert(i); memo.insert(i*10+i); for(int j=0;j<=9;j++){ memo.insert(i*100+j*10+i); memo.insert(i*1000+j*100+j*10+i); } } int n; scanf("%d",&n); it=memo.lower_bound(n); int ans1=(*it); it--; int ans2=(*it); printf("%d\n",n-ans2>ans1-n?ans1:ans2); } *2490 Parentheses http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=2490 ()がきちんと対応してるか判断する問題。 解法 ()の閉じ対応を数えていくだけの簡単な問題です。 #include<stdio.h> int main(){ int count=0; int n,m; char s[3],c1; bool ok=true; scanf("%d",&n); while(n--){ scanf("%s %d",&s,&m); c1=s[0]; if(c1=='('){ count+=m; }else if(c1==')'){ if(count<m){ ok=false; }else{ count-=m; } } } printf("%s\n",ok==true&&count==0?"YES":"NO"); }

表示オプション

横に並べて表示:
変化行の前後のみ表示: