c++

2007年アジア予選B問題(Prime Gap)(2007/11/15(木) 00:49:27)

2007年アジア予選B問題を解いてみた 解法 エラトステネスの篩で素数配列を生成し、素数以外の数字なら素数間の距離を数えて出力するだけ。 ソース (目標10分以内) #include #include using namespace std; #define MAX_LEN 1299800//>1299709 int main(){ …

2007年アジア予選H問題(Bug Hunt)(2007/11/14(水) 00:05:05)

2007年アジア予選H問題を解いてみた。以下のBNFのプログラムのインタプリタを作成し、何行目にバグがあるかを見つける問題。 <program> ::= <declaration> | <program><declaration> | <program><assignment> <declaration> ::= <array name>[<number>]<new line> <assignment> ::= <array name>[<expression>]=<expression><new line> <expression> ::= <number> | <array name>[<…</array></number></expression></new></expression></expression></array></assignment></new></number></array></declaration></assignment></program></declaration></program></declaration></program>

2007年アジア予選A問題(And Then There Was One)(2007/11/13(火) 23:36:42)

2007年アジア予選A問題を解いてみた。 解法 最大の石の数10000よりも大きい配列を用意する。 必要な配列数だけ0で埋めて初期化。 消した石は1を代入しいく。(石数-1回繰り返す) 高速化 上記の解法でも普通に答えは得られるが、少し速度的に遅いので、 for(…

JDK6の新機能(2007/08/13(月) 01:42:59)

凄い(?)!! こんな新機能が出たんや!!ってことで φ(*'д'* )メモメモ JDK6でのコンソール入力(文字列) Console console = System.console(); String line = console.readLine("文字列:"); JDK6でのコンソール入力(パスワード) 標準入力からの入力がコンソー…

2007年国内予選C問題(Cut the Cake)(2007/07/30(月) 01:10:47)

2007年国内予選C問題のCut the Cake(ケーキカット)をやってみました。 解法 1つ1つのピースを切られた順番、大きさ(縦・横)で管理する。 切られたピースは削除し、新たに2つ新しいピースを追加する。ソートは、切られた順番にソートするless()オペレー…

2007年国内予選B(Analyzing Login/Logout Records)(2007/07/30(月) 00:44:10)

2007年国内予選B問題のAnalyzing Login/Logout Records(ログイン/ログアウト記録の解析)をやってみました。 解法 3600のboolean配列を用意すればよい感じ? ソース (目標10分以内) #include <iostream> using namespace std; typedef struct LOG{ bool t[3601]; </iostream>…

2007年国内予選A問題(ICPC Score Totalizer Software)(2007/07/30(月) 00:37:45)

include 2007年国内予選A問題のICPC Score Totalizer Software(ICPC 得点集計ソフトウェア)をやってみました。 解法1 Vectorに入れてソートしたものを、先頭データ+1から末尾データ−1までで平均値を出す。 解法2 入力で最小値と最大値、合計を求めて…

2006年国内予選C問題(Hexerpents of Hexwamp)(2007/07/25(水) 01:04:31)

2006年ICPC国内予選のC問題を暇なので解いてみた!後から思ったんやけど、幅優先の方がいいね・・・ 実際にコレ実行したら結構時間かかるし(汗 でも、絶対にどこか枝刈りで切るはずだ!! 本日のコーディングミス こんな酷いミス久しぶりww 何回か、コード…

優先順位付き待ち行列(Priority queue)(2007/07/23(月) 22:58:42)

優先順位付き待ち行列(Priority queue)とは、普通の待ち行列(キュー)と少し違い、デキュー(取り出す)ときに優先順位の高い(低い)ものから取り出す待ち行列。順次にデータが出てくる場合においてデータをソートしたい場合において、並び替えを行う時…

C言語のプログラム終了時に呼ばれる関数

atexitを使うとプログラム終了時に呼ばれる関数を登録できる。(void (*)()の関数) atexitは複数登録(スタックとして積まれる?)できるようで、後入れ先出しで実行される。 また、終了時の関数は少なくともATEXIT_MAX個(32個?)登録できるらしい。 使い…

log4cxxのコンパイル手順(VC9)

適当なディレクトリworkを作り、以下の2つを解凍 apache-log4cxx-0.10.0.zip apr-all-1.2.12-win32-x86-msvcrt60.zip(aprという名前に変更) work←適当なディレクトリ ├apache-log4cxx-0.10.0 │└src │ └main │ └include←INCLUDEパス └apr ├include←INCLUDE…

Maximum Winter Contest 2008 H問題(Problem H Hidden Prime Number)

『Maximum Winter Contest 2008』のH問題 http://maximum.vc/PastProblems/Winter-Contest-2008/h/h.htmlエラストテネスの篩で2-16までのテーブルを作って、ユークリッドの互除法(GCD)で求めたものがソスウ化判定するだけ #include <iostream> #include <vector> #include <math.h> usi</math.h></vector></iostream>…

Maximum Winter Contest 2008 E問題(Problem E Exploring A Cave)

『Maximum Winter Contest 2008』のE問題 http://maximum.vc/PastProblems/Winter-Contest-2008/e/e.htmlダイクストラだけど・・・ 『複数の異なる高さのマスが接する境界上の点の高さは、それらのうち最も高いマスの高さとする。』が罠! #include <iostream> using n</iostream>…

Maximum Winter Contest 2008 A問題(Problem A Abbreviation)

『Maximum Winter Contest 2008』のA問題 http://maximum.vc/PastProblems/Winter-Contest-2008/a/a.htmlしっかり仕様を実装すればOK #include <string> #include <iostream> using namespace std; int main(){ int n, i, j; char word[1024][100], c; while(cin >> n, n){ for</iostream></string>…