落書きノート

ふと自分が気になった事を書いてます

アルゴリズム

C言語で問題を解く

解きながら学ぶC言語作者: 柴田望洋,肘井真一,高木宏典,赤尾浩出版社/メーカー: ソフトバンククリエイティブ発売日: 2004/11/09メディア: 単行本購入: 2人 クリック: 43回この商品を含むブログ (9件) を見る // q8-6 #include <stdio.h> int factorial(int n) { if(n </stdio.h>…

C言語で問題を解く

解きながら学ぶC言語作者: 柴田望洋,肘井真一,高木宏典,赤尾浩出版社/メーカー: ソフトバンククリエイティブ発売日: 2004/11/09メディア: 単行本購入: 2人 クリック: 43回この商品を含むブログ (9件) を見る // q8-3 #include <stdio.h> #define max(x, y) x > y ? x </stdio.h>…

C言語で問題を解く

解きながら学ぶC言語作者: 柴田望洋,肘井真一,高木宏典,赤尾浩出版社/メーカー: ソフトバンククリエイティブ発売日: 2004/11/09メディア: 単行本購入: 2人 クリック: 43回この商品を含むブログ (9件) を見る // q7-9 #include <stdio.h> #include <limits.h> int main(void) { u</limits.h></stdio.h>…

Haskellで問題を解く

普通にインタプリタでやるとできなかったので、テキストファイルに書いてから読み込ませると出来ました。これ以外にやり方がわからないのでわかる方、教えてください。後、面倒なので、このブログではLinuxとmacOSのHaskellコードと混ぜて書いてます。バージ…

Haskellで問題を解く

とりあえずこの分だけ投稿しておきます。問題7はもう少し考えないと。let宣言してますが、GHCのバージョンが7だとこういうふうにしないと使えませんでした。Ubuntu 16.04 LTSのHaskell-Platformは古いんですね。 問題掲載サイト 99 questions/1 to 10 - Hask…

C言語で問題を解く

解きながら学ぶC言語作者: 柴田望洋,肘井真一,高木宏典,赤尾浩出版社/メーカー: ソフトバンククリエイティブ発売日: 2004/11/09メディア: 単行本購入: 2人 クリック: 43回この商品を含むブログ (9件) を見る // q7-8 #include <stdio.h> int count_bits(unsigned x) {</stdio.h>…

Javaで問題を解く

解きながら学ぶJava 入門編作者: 柴田望洋,由梨かおる出版社/メーカー: SBクリエイティブ発売日: 2008/05/24メディア: 単行本購入: 8人 クリック: 72回この商品を含むブログ (9件) を見る // q7-12 import java.util.Scanner; class q7_12 { public static v…

C言語で問題を解く

7章目に差し掛かって色々試していたのですが、仕様が変わっている?ので、答えと同じ表示にならないですね。それにしてもビット計算難しいですよね。自分で考えて頭がパンクしそうでしたが、なんとか出来ました。答えを見たのもありますが、まあこれぐらいな…

C言語で問題を解く

解きながら学ぶC言語作者: 柴田望洋,肘井真一,高木宏典,赤尾浩出版社/メーカー: ソフトバンククリエイティブ発売日: 2004/11/09メディア: 単行本購入: 2人 クリック: 43回この商品を含むブログ (9件) を見る // q7-1 #include <stdio.h> #include <limits.h> int main(void) { p</limits.h></stdio.h>…

C言語でコンパイラ作成その2

今のところ順調ですが、機能が増えると悩ましいことが増えるんだろうなぁと予期してます。機能的には従来の便利な手続き型のスクリプト言語と関数型言語を混ぜたような文法にしようかなと思ってこんな感じに仕上がりました。まだputsとtoupperしか実装してま…

C言語で問題を解く

解きながら学ぶC言語作者: 柴田望洋,肘井真一,高木宏典,赤尾浩出版社/メーカー: ソフトバンククリエイティブ発売日: 2004/11/09メディア: 単行本購入: 2人 クリック: 43回この商品を含むブログ (9件) を見る // q6_16 #include <stdio.h> const int max(const int kam</stdio.h>…

C言語でコンパイラを作成してみる

プログラミングを日課にしていると作りたいものも自然と出てきますね。今回はC言語でコンパイラを作ってみてます。今のところputs文だけ実装しました。Hello Worldを出力するだけでも結構大変ですね。このプログラムはまだまだですけど。 #include <stdio.h> #include <string.h></string.h></stdio.h>…

C++でデータベースを作成してみる

MariaDBやPostgreSQLを真似て作ってみてます。表示がおかしいのでここを直せばそれっぽく出来てると思います。今のままでも整ってはいますが、既存のデータベースの表示に近づけてみます。今日は疲れたのでここまで。デストラクタに苦しめられた…。 #include <iostream></iostream>…

Javaで問題を解く

以前に投稿してましたけど漏れがあったので修正してやってみました。今回はなかなか良い出来です。以前の記事は削除しました。最近は丁寧に更新してるな…。それはそうとAIZU ONLINE JUDGE,落ちてますね。メンテナンス中なんでしょうか。 世界で闘うプログラ…

C言語で問題を解く

解きながら学ぶC言語作者: 柴田望洋,肘井真一,高木宏典,赤尾浩出版社/メーカー: ソフトバンククリエイティブ発売日: 2004/11/09メディア: 単行本購入: 2人 クリック: 43回この商品を含むブログ (9件) を見る // q6-10 #include <stdio.h> #define MAX 20 void fill(in</stdio.h>…

C++で問題を解く AOJ

OpenGLで三角関数を使っておきながら、引数にラジアンを指定するのを忘れていて、立ち往生してました。とりあえずこんな感じです。 // Distance #include <iostream> #include <cmath> #include <iomanip> using namespace std; int main(void) { double x1,y1,x2,y2; cin >> x1 >> y1 </iomanip></cmath></iostream>…

C++で問題を解く AOJ

// Card Game #include <iostream> using namespace std; int main(void) { int n; int taro_cnt = 0, hanako_cnt = 0; string taro,hanako; cin >> n; for(int i = 0; i < n; i++) { cin >> taro >> hanako; if(taro > hanako) taro_cnt += 3; else if(taro < hanako)</iostream>…

C++で問題を解く AOJ

char型の配列とかstringクラスを使って地道にやってましたけど、なぜかAcceptされなかったので解説を見てみたら、stringクラスのsubstrメソッドを使えと書いてあって、やってみるとAcceptされました。解説見て良かったです。かなり頭を使った…。頭がかなり痛…

Javaで問題を解く 修正版 codingbat

気になったので、より汎用的に修正しました。 // countXX int countXX(String str) { int cnt = 0; boolean flag = false; for(char c : str.toCharArray()) { if(flag && c == 'x') cnt++; if(c == 'x') flag = true; else flag = false; } return cnt; }

Javaで問題を解く codingbat

// stringTimes public String stringTimes(String str, int n) { String answer = ""; for(int i = 0; i < n; i++) answer += str; return answer; } // frontTimes public String frontTimes(String str, int n) { String answer = ""; for(int i = 0; i <…

Javaで問題を解く codingbat

// lastDigit public boolean lastDigit(int a, int b) { return a % 10 == b % 10 ? true : false; } // endUp public String endUp(String str) { return str.length() >= 3 ? str.substring(0, str.length() - 3) + str.substring(str.length() - 3, str.…

C++で問題を解く AOJ

// Finding a Word #include <iostream> #include <string> #include <sstream> #include <algorithm> using namespace std; int main(void) { string W, T; string item; string t; int cnt = 0; cin >> W; cin.ignore(); while(getline(cin, T) && T != "END_OF_TEXT") { transform(T.begin(), T.</algorithm></sstream></string></iostream>…

Javaで問題を解く

やっと次から連結リストです。ちょっとずつやってます。 世界で闘うプログラミング力を鍛える本 コーディング面接189問とその解法作者: Gayle Laakmann McDowell出版社/メーカー: マイナビ出版発売日: 2017/02/27メディア: Kindle版この商品を含むブログを見…

Javaで問題を解く

計算量を考慮して、2パターンの解法を考えました。 世界で闘うプログラミング力を鍛える本 ~コーディング面接189問とその解法~作者: Gayle Laakmann McDowell,岡田佑一,小林啓倫出版社/メーカー: マイナビ出版発売日: 2017/02/27メディア: 単行本(ソフトカ…

C++で問題を解く AOJ

// Ring #include <iostream> using namespace std; int main(void) { string s,p; bool flag = false; cin >> s; cin >> p; s += s; if(s.find(p) != string::npos) flag = true; if(flag) cout << "Yes" << endl; else cout << "No" << endl; return 0; }</iostream>

Javaで問題を解く

解きながら学ぶJava 入門編作者: 柴田望洋,由梨かおる出版社/メーカー: SBクリエイティブ発売日: 2008/05/24メディア: 単行本購入: 8人 クリック: 72回この商品を含むブログ (9件) を見る // q7_4 import java.util.Scanner; class q7_4 { static int sumUp(…

C言語で問題を解く

解きながら学ぶC言語作者: 柴田望洋,肘井真一,高木宏典,赤尾浩出版社/メーカー: ソフトバンククリエイティブ発売日: 2004/11/09メディア: 単行本購入: 2人 クリック: 43回この商品を含むブログ (9件) を見る // q4_3 #include <stdio.h> int main(void) { int n,sourc</stdio.h>…

C言語で問題を解く AOJ

ASCIIコードを使って、大文字を小文字に変換するアルゴリズムで解いてみました。そんなに難しくはないんですけどね。 // Counting Characters #include <stdio.h> #include <string.h> int main(void) { char buf[1200]; char c; int i; int answer[26]; memset(answer, 0, size</string.h></stdio.h>…

C言語で問題を解く AOJ

// Counting Characters #include <stdio.h> #include <ctype.h> #include <string.h> int main(void) { char buf[1200]; char c; int i; int answer[26]; memset(answer, 0, sizeof(answer)); while(fgets(buf, sizeof(buf), stdin) != NULL) { for(i = 0; buf[i] != '\0'; i++) { if(bu</string.h></ctype.h></stdio.h>…

C++で問題を解く AIZU ONLINE JUDGE

まー、ここまでやったら配列でやってもいけると思いますが、C言語かC++言語でまた原始的にやってみようと思いますが、とりあえずこんな感じです。 // Counting Characters #include <iostream> #include <map> #include <cctype> using namespace std; int main(void) { char line[1</cctype></map></iostream>…