Problem 8

#include <iostream> #include <string> using namespace std; #define NUM "\ 73167176531330624919225119674426574742355349194934\ 96983520312774506326239578318016984801869478851843\ 85861560789112949495459501737958331952853208805511\ 125406987471585238630507156</string></iostream>…

Problem 7

#include <iostream> #include <vector> #include <cmath> using namespace std; #define NUM 10001 #define DST 100 void primeVector(vector<bool> *pv_table) { pv_table->at(0) = pv_table->at(1) = false; for (vector<bool>::size_type i = 2, end = (vector<bool>::size_type)ceil(sqrt((double)(</bool></bool></bool></cmath></vector></iostream>…

Problem 6

#include <iostream> #include <cmath> using namespace std; #define NUM 100 int main(int argc, char **argv) { double sp; // 和の二乗 double ps; // 二乗数の和 // 和の二乗 sp = 0; for (int i = 1; i <= NUM; i++) { sp += i; } sp = pow(sp, 2.0); // 二乗数の和 ps </cmath></iostream>…

Problem 5

#include <iostream> #include <vector> #include <cmath> using namespace std; #define NUM 20 // 素数テーブルの作成 void primeTable(int l, bool t_prime[]) { unsigned int size = (unsigned int)ceil(sqrt((double)NUM)); // 篩の大きさ memset(t_prime, true, NUM); // 篩にか</cmath></vector></iostream>…

Problem 4

斜めに総当たり戦する感じです. #include <iostream> #include <cmath> using namespace std; #define MAX 999 bool isPalindrome(int n) { bool f = false; if (100000 <= n && n <= 999999) { char l[4], r[4]; // 下3桁を反転 for (int i = 0; i < 3; i++) { r[i] = '0' +</cmath></iostream>…

Problem 3

篩も懐かしいねー #include <iostream> #include <cmath> using namespace std; #define NUM 600851475143 int main(int argc, char ** argv) { unsigned int size = (unsigned int)ceil(sqrt((double)NUM)); // 篩の大きさ bool *t_prime = new bool [size]; // 素数テーブル</cmath></iostream>…

Problem 2

フィボナッチさん懐かしいねー #include <iostream> #include <vector> using namespace std; #define LIMIT 4000000 int main(int argc, char **argv) { vector<int> vf; // フィボナッチ数列 vf.push_back(1); vf.push_back(2); while (1) { vector<int>::size_type e = vf.size(); vf.</int></int></vector></iostream>…

Problem 1

set を使っているのは単に使ってみたかっただけです. #include <iostream> #include <set> using namespace std; #define NUM 1000 int main(int argc, char **argv) { set<int> s; for (int i = 3; i < NUM; i+=3) { s.insert(i); } for (int i = 5; i < NUM; i+=5) { s.insert</int></set></iostream>…

フィボナッチ数列

さいきんちかごろ再帰がマイブームなので,フィボナッチ数列を書いてみました. #include <stdio.h> //--------------------------------------------------------- // フィボナッチ数を求める // 引数 // n: フィボナッチ数の n 番目 // 戻り値 // 成功 -> フィボナ</stdio.h>…

TopCoder SRM のカレンダー

TopCoder SRM の日程を表示するプログラムを組みました. Web上で動くほうがいいので,そのうち Action Script か PHP で書き直そうかな. #include <windows.h> #include <wininet.h> #include <iostream> #include <string> #include <vector> #include <time.h> #include <conio.h> using namespace std; #pragma comment(li</conio.h></time.h></vector></string></iostream></wininet.h></windows.h>…

Curling 2.0

ひさびさに ICPC の問題です. 天下一プログラマーコンテストの問題を解くときに再帰を使ったので,これも再帰で解いてみました. まだまだだけど,使いこなせるようになればプログラミングの幅も広がるかなと思います.やってることは,ぶつかる,壊す,直…

round 関数

今のプログラミング環境に round 関数がなかったので作りました. foor 関数と ceil 関数はあるんだからこっちもあっていいと思うんですけどね. //--------------------------------------------------------- // round関数(0.5は偶数側に丸める四捨五入)…

SRM 144 DIV 1

符号化されたバイナリコードを,復号化しなさいって問題ですね. とりあえずテストは通ったけどこれでよかったのかな(・・; #include <iostream> #include <vector> #include <string> using namespace std; class BinaryCode { public: vector <string> decode(string message); }; vector<string> Binar</string></string></string></vector></iostream>…

Mysterious Gems

テーブルを用意して,宝石をばら撒いて,ロボットで掘り返しました. #include <iostream> using namespace std; void dis(int field[][22]) { for(int i = 0; i < 22; i++) { for(int j = 0; j < 22; j++) { if(i == 10 && j == 10) cout << "* "; else cout << field</iostream>…

Analyzing Login/Logout Records

2年前に,時間切れになったやつだね.たしか,break するタイミングが1つ遅かったのが原因だった気がします. 学生ごとにテーブルを用意してやって,true の時間を数えます. #include <iostream> #include <fstream> using namespace std; #define TIME 720 int main() { // //</fstream></iostream>…

ICPC Score Totalizer Software

問題文をそのまま書いただけです. 特にコメントもないよね(・・; #include <iostream> #include <fstream> using namespace std; int main() { // // ファイル // ifstream fin("A2.txt"); ofstream fout("a.out"); int n; // // 入力 // while(true) { fin >> n; //cout << n <<</fstream></iostream>…

エラトステネスのふるい

素数のテーブルを作る関数を書きました. 有名なアルゴリズムですね. //--------------------------------------------------------- // 素数の表を作成する // 引数 // table: 素数の表 // max: 表の最大値 // 表の中身 // 0 1 2 3 4 5 6 7 8 9 10 // 0 0 …

Space Coconut Crab

メモり、メモる。の hatyone さんと一緒に組んでみました. 相変わらず,問題文に無駄が多いですd(・・;good!! #include <iostream> #include <fstream> #include <cmath> using namespace std; int sum(int x, int y, int z) { return x + y*y + z*z*z; } int main() { // // ファイル /</cmath></fstream></iostream>…

FizzBuzz問題

PHP

さいきん,記事をあげてないなと思ったので,制御構造に関する別の構文の練習がてら,PHPでFizzBuzz問題を解いてみました. 思ったより,この書き方も好きですъ "; endfor; ?>

C++のファイル入出力

そろそろ string も使いたくなってきたので,C++のファイル入出力を見てみました. 出力するときに整形することはあんまりないから,これのほうが楽かな. #include <iostream> #include <fstream> #include <string> using namespace std; int main(int argc, char** argv) { cout << "</string></fstream></iostream>…

1行掲示板

PHP

C言語とjavaを習得済みで,PHPは未経験な人向けの教材プログラムです. HTML部分は用意しておいて,掲示板の書き込み,表示だけをPHPで書いてもらおうかなって思ってるんだけど,30分くらいでとけるかな. <html> <head> <title>PHP掲示板</title> </head> <body> <form action="board.php" method="post"> 名前: </br> <input type="text" name="name" value = ""> </br> 本文: </br>

Organize Your Train part II

全パターンを1つの配列に入れて,最後に(全パターンの長さ)/(1パターン文の長さ)でパターン数を出してます. こぴぺしまくったから,もっときれいにしようと思えばできたね. #include <stdio.h> #include <string.h> // 順を反転 void r(char* s) { char *t = new char [s</string.h></stdio.h>…

答え合わせ

判定データを用意してくれている問題が出てきたので,出力ファイルが等しいか見てくれるプログラムを作ってみました. でも,あと2人はLinux使いさんだから必要ないかな. 実行ファイルがほしいようなら渡すから言ってね. #include <stdio.h> #include <string.h> int main(int</string.h></stdio.h>…

Unit Fraction Partition

さいしょに通分して,あとは総当りで求めました. 途中で continue してるのは,元の分数より単位分数の和のほうが大きくなったり,単位分数の数が n より多くなっちゃうときはもう見つかるわけないからです. #include <stdio.h> int main(void) { // ファイル出力準</stdio.h>…

Polygonal Line Search

Polygonal Line Search 回を追うごとにソースが汚くなってくるなぁ(・・; アルゴリズムは, 基準の座標を,原点から始まるように直す 回転させて比べる 順番の前と後ろを入れ替える 回転させて比べる です.何度でも言う,解ければいいのさorz #include <stdio.h> #defi</stdio.h>…

ディリクレの算術級数定理

ディリクレの算術級数定理 素数の求め方忘れたから,適当にやっちゃいました. だから処理に時間かかるね. #include <stdio.h> int sosu(int n) { if(n < 2) return 0; if(n == 2) return 1; for(int i = 2; i <= n/2; i++) { if(n%i == 0) return 0; } //printf("(%</stdio.h>…

Red and Black

Red and Black 探索するのは面倒だったので,総当り的に適当に済ましちゃいました. #include <stdio.h> #define DOT 0 #define NOT -1 #define CAN 1 int main(void) { // ファイル出力準備 FILE *pfI; // 入力ファイルポインタ FILE *pfO; // 出力ファイルポインタ </stdio.h>…

Numeral System

Numeral Systemこんな泥臭いソースでも,ちゃんとした答えが出ればよいのです. #include <stdio.h> int main(void) { puts("MCXI"); // ファイル出力準備 FILE *pfI; // 入力ファイルポインタ FILE *pfO; // 出力ファイルポインタ pfI = fopen("c.in", "r"); if(pfI </stdio.h>…

ファイルの入出力

#include <stdio.h> int main(void) { // ファイル出力準備 FILE *pfI; // 入力ファイルポインタ FILE *pfO; // 出力ファイルポインタ pfI = fopen("a.in", "r"); if(pfI == NULL) { printf("ERR: input file open\n"); return -1; } pfO = fopen("a.out","w"); if(pf</stdio.h>…

Make Purse Light

Make Purse Light これで合ってるかな. もっとテストケース使って確かめたいけど,多分これでも意味は変わらないはず.どんなことをしてるかというと,まず大きめな小銭で払っておつりをもらって,手元の小銭をわざわざ店員さんに両替してもらってる感じで…