読者です 読者をやめる 読者になる 読者になる

川のブログ

川の適当気ままなブログです。 

AOJ volume0

AOJ 0001 List of Top 3 Hills

こんにちは川です。 今回もpythonです。 ソースコード ans=[] for i in range (0,10): ans.append(int(input())) ans.sort(reverse=True) for i in range (0,3): print(ans[i])

AOJ 0000 QQ

こんにちは川です。 pythonを次のコンテストで使うことになったので勉強ついでに解いています。 ソースコード for i in range(1,10): for j in range(1,10): print(str(i)+"x"+str(j)+"="+str(i*j))

AOJ 0001 List of Top 3 Hills

こんにちは川です。 sortしただけなので特に解説はないです。 ソースコード using System; namespace kawa { class MainClass { public static void Main(string[] args) { int[] high = new int[10]; for (int i = 0; i < 10; i++) { high[i] = int.Parse(C…

AOJ 0000 QQ

こんにちは川です。 C#始めました。(冷やし中華風) ちょこちょこ頑張ります。 ソースコード using System; class Sample { public static void Main() { for (int i = 1; i < 10; i++) { for (int j = 1; j < 10; j++) { Console.WriteLine(i + "x" + j + "=…

AOJ 0092 Square Searching

こんにちは川です。 今回は、dpですね。 (i,j)を正方形の右下の点と置いた時の辺の長さを持っておきます。 ソースコード #include<bits/stdc++.h> using namespace std; int dp[1000][1000]; string str[1000]; int serch(int n) { int ans=0; memset(dp,0,sizeof(dp)); for</bits/stdc++.h>…

AOJ 0096 Sum of 4 Integers II

こんにちは川です。 今回はdpですね。やはり勉強しないといけない。 ソースコード #include<bits/stdc++.h> using namespace std; int dp[4][4001]={}; int main() { for(int i=0;i<1001;i++)dp[0][i]++; for(int i=1;i<4;i++){ for(int j=4000;j>-1;j--){ for(int k=0;k<10</bits/stdc++.h>…

AOJ 0087 Strange Mathematical Expression

こんにちは川です。 今回は特にしていません。 スタックを使いました。 それだけです。 ソースコード #include<bits/stdc++.h> using namespace std; int main() { string str; while(getline(cin,str)){ stack<double> st; for(int i=0,point=0;;i++){ if(str[i]==' '||str[i]=='\0</double></bits/stdc++.h>…

AOJ 0088 The Code A Doctor Loved

こんにちは川です。 今回はただただ作業でした。 対応している数字を入れて2進数計算させられただけ。 疲れた。 ソースコード #include<bits/stdc++.h> using namespace std; int main() { string str; string first=" ',-.?ABCDEFGHIJKLMNOPQRSTUVWXYZ" ,secound="ABCDEFGH</bits/stdc++.h>…

AOJ 0037 Path on a Grid

こんにちは川です。 今回は普通に深さというか単純に解きました。 基本、左>前>右>後という感じで動いていくとしぜんかな。 最初に提出してからコード長を短くなるように頑張りましたが微妙ですね。 ソースコード #include<bits/stdc++.h> using namespace std; string side</bits/stdc++.h>…

AOJ 0040 Affine Cipher

こんにちは川です。 今回は問題文にあるαとβを1~50までの間をひたすら探してthatかthisが出るまでひたすらfor文で回しただけのものでした。 非常に汚いね。 ソースコード #include<bits/stdc++.h> using namespace std; int main() { int n;char st; cin>>n; string str; fo</bits/stdc++.h>…

AOJ 0022 Maximum Sum Sequence

こんにちは川です。 今回は深さで解きました。 足していったときの今までで得ることができる大きい値とそのとき足さなかった時の値を見比べるみたいなことをしています。 ソースコード #include<bits/stdc++.h> using namespace std; int num[5000]; int serch(int line,int</bits/stdc++.h>…

AOJ 0038 Poker Hand

こんにちは川です。 今回は問題文に書いてある通りに仕分けただけでした。 ソースコード #include<bits/stdc++.h> using namespace std; int main() { int num; while(cin>>num){ char str; int hand[14]={}; hand[num]++; for(int i=0;i<4;i++){ cin>>str>>num; hand[num]+</bits/stdc++.h>…

AOJ 0065 Trading

こんにちは川です。 久しぶりです。 AOJよりやることがあると思っていろいろやってますが、解きたくなるんですよね。 今は絶賛風邪をひいているのでほどほどにしています。 さて今回は、問題をしっかり読めばいけましたが、いろいろ勉強したのでリンクを張り…

AOJ 0084 Search Engine

こんにちは川です。 今回は特にこれといったことはないです。 ソースコード #include<bits/stdc++.h> using namespace std; int main() { string str; getline(cin,str); int point=0; bool flag=1; for(int i=0;i<str.size();i++){ if(str[i]==' '||str[i]=='.'||str[i]==','){ if(i-point>2&&i-point<7){ if(!flag)cout<<" "; for(int j=point;j</str.size();i++){></bits/stdc++.h>

AOJ 0071 Bombs Chain

こんにちは川です。 今回は爆破する爆弾を'2'に置き換えて'2'がなくなるまでひたすらループさせました。 ソースコード #include<bits/stdc++.h> using namespace std; int main() { int n; cin>>n; for(int i=1;i<=n;i++){ string str[8]; for(int j=0;j<8;j++)cin>>str[j];</bits/stdc++.h>…

AOJ 0078 Magic Square

こんにちは川です。 今回は問題文に書いている通りにコードを書きました。 ソースコード #include<bits/stdc++.h> using namespace std; int main() { int n; while(cin>>n,n){ int mas[15][15]={},x=n/2,y=x+1; mas[y][x]=1; for(int i=2;i<=n*n;i++){ x+=1;y+=1; while(1)</bits/stdc++.h>…

AOJ 0034 Railway Lines

こんにちは川です。 今回も特にないですね。 ソースコード #include<bits/stdc++.h> using namespace std; int main() { int dis[11],up,down,sum; char s; while(cin>>dis[1]>>s){ sum=dis[1]; for(int i=2;i<=10;i++){ cin>>dis[i]>>s; sum+=dis[i]; } cin>>up>>s>>down; </bits/stdc++.h>…

AOJ 0029 English Sentence

こんにちは川です。 今回はただ解きました。 特に解説はないです。 ソースコード #include<bits/stdc++.h> using namespace std; int main() { int sen=0,maxe[2]={0,0},lo=0; string str[1000],s; while(cin>>s){ lo=s.size(); if(maxe[0]</bits/stdc++.h>

AOJ 0030 Sum of Integers

こんにちは川です。 日付が変わってしまった。 今回は深さ優先探索をしただけです。 自分的にはコード長を抑えることができたので満足です。 ソースコード #include<bits/stdc++.h>using namespace std;int serch(int i,int j,int n){ if(!n&&!j)return 1; else if(i==10||!</bits/stdc++.h>…

AOJ 0042 A Thief

こんにちは川です。 疲れましたね。 はじめてDPというものをしてみました。 ナップサック問題というらしいです。 蟻本を参考にしながら解きました。 自分の説明よりも蟻本を見てやったほうが早いと思うので蟻本を見てください。 pow関数にむかついたので自分…

AOJ 0082 Flying Jenny

こんにちは川です。 今回は配列に馬車や車、馬の順番をぶち込んで、それをずらしていって残りが少なかった場合を表示させてます。 今回はなぜかソースコードのコード長を減らしたい衝動に駆られていた。 しかし、そこまで減らなかったし、載せれるレベルには…

AOJ 0056 Goldbach's Conjecture

こんにちは川です。 今回は愚直にやると時間が足りないので aとn-aを足してnになるものをカウントしています。 あ~つかれた。 ソースコード #include<bits/stdc++.h>using namespace std;int main(){ int prime[50001]; for(int i=2;i<50001;i++)prime[i]=0; for(int i=2;i</bits/stdc++.h>…

AOJ 0055 Sequence

こんにちは川です。 今回は問題文に書かれてあるように各項ごとに計算しました。 精度については小数点以下が6桁より多くなるように調整しています。 setprecisionについてのリンクを下に貼ってます。 http://ogawa.s18.xrea.com/tdiary/20120220p01.html …

AOJ 0054 Sum of Nth decimal places

こんにちは川です。 今回の問題は普通に解こうとしたら精度やオーバーフローなどの問題が発生します。 なので10倍ずつしていろいろやっています。 勉強しないとな~ ソースコード #include<bits/stdc++.h>using namespace std;int main(){ int a,b,n; while(cin>>a>>b>>n)</bits/stdc++.h>…

AOJ 0039 Roman Figure

こんにちは川です。 この問題は問題にあるとおりにコードを書けばいけました。 見掛け倒し的な問題? ソースコード #include<bits/stdc++.h>using namespace std;int serch(char str){ if(str=='I')return 1; else if(str=='V')return 5; else if(str=='X')return 10; else </bits/stdc++.h>…

AOJ 0066 Tic Tac Toe

こんにちは川です。 今回は順序立てて解くといけました。 ソースコード #include<bits/stdc++.h>using namespace std;int main(){ int co=0,flag=0; string str; while(cin>>str){ for(int i=0;i<3&&flag!=1;i++){ for(int j=0;j<3;j++){ if(str[i*3+j]==str[i*3])co++; } i</bits/stdc++.h>…

AOJ 0083 Era Name Transformation

こんにちは川です。 この問題は凡ミスしなければいけます。 ifぶんおおいな~ ソースコード #include<bits/stdc++.h> using namespace std; int main() { int year,month,date; while(cin>>year>>month>>date){ if(year<1868||year==1868&&month<9||year==1868&&month==9&&d</bits/stdc++.h>…

AOJ 0061 Rank Checker

こんにちは川です。 今回は文字処理が少しできればさほど難しくないと思われます。 同じ順位の処理にはキューを使いました。 やはりコード量を減らしたいですね。 ソースコード #include<bits/stdc++.h>using namespace std;int main(){ int team[101],num=0,point,lank[101</bits/stdc++.h>…

AOJ 0053 Sum of Prime Numbers

こんにちは川です。 今回も素数が出てきています。エラトステネスの篩がわからない方は下のリンクから学習してください。 kawakawa.hatenablog.com 制約が10000と大きめなので、これより少し大きく要素数をとってごり押しました。 表ができればあとは楽です…

AOJ 0050 Apple and Peach

こんにちは川です。 今回のはgetlineで文末まで読み込み、そこからやっていきました。 まぁ見ればわかります。 精進していきます。 ソースコード #include<bits/stdc++.h> using namespace std; int main() { int flag=0; char apple[]="apple",peach[]="peach"; string str</bits/stdc++.h>…

AOJ 0052 Factorial II

こんにちは川です。 この問題は階乗に関係している問題ですが、普通に階乗してしまうと膨大な数となってしまいます。末尾が0となる場合は10がかけられた場合になります。10は5と2の二つの素数からなっています。階乗していくと2回に1回偶数なので2…

AOJ 0051 Differential II

こんにちは川です。 これはバブルソートで大きい順にならべ、それを利用して解きました。 コード量が多いですね。数をこなします。 ソースコード #include<bits/stdc++.h>using namespace std;int main(){ int high=0,low=0,n,number[8],kawa; string str; cin>>n; for(int </bits/stdc++.h>…

AOJ 0060 Card Game

こんにちは川です。 まぁ見ればわかると思います。 引く可能性のあるカードの種類は7種類なので、確率が50%を超えるためには4種類以上なければなりません。 ソースコード #include<bits/stdc++.h>using namespace std;int main(){ int mycard1,mycard2,yourcard,card[1</bits/stdc++.h>…

AOJ 0044 Prime Number II

こんにちは川です。 この問題は0009の応用?みたいな感じなので、0009の解説を見てから解いてください。 kawakawa.hatenablog.com 今回はまず素数表みたいなのをnの制約より少し大きめ(ここで大きすぎると時間内に終わらない)なのをつくり、その表を使って…

AOJ 0033 Ball

こんにちは川です。 今回は深さ優先探索ですね。 心残りなのがポインタを使わなかったことですね。 ソースコード #include<bits/stdc++.h>using namespace std;int ball[10];int serch(int now,int B,int C){ if(now==10)return 1; if(B<ball[now])return serch(now+1,ball[now],C); if(C<ball[now])return serch(now+1,B,ball[now]); return 0;}int main(){ int n,ans; cin>>n;…</ball[now])return></bits/stdc++.h>

AOJ 0093 Leap Year

こんにちは川です。 最近凡ミスが多い。 勉強勉強。 今回も普通にやれば解けます。 ソースコード #include<bits/stdc++.h>using namespace std;int main(){ int fiyear,finyear,co=0,now=0; while(cin>>fiyear>>finyear&&fiyear!=0&&finyear!=0){ if(now!=0)cout<</bits/stdc++.h>

AOJ 0095 Surf Smelt Fishing Contest

こんにちは川です。 この問題は問題文をしっかり読めばいけます。 ソースコード #include<bits/stdc++.h> using namespace std; int main() { int n,men,fish,num,fishmax; cin>>n; for(int i=0;i<n;i++){ cin>>men>>fish; if(i==0){ num=men; fishmax=fish; } else { if(fish>fishmax){ </n;i++){></bits/stdc++.h>…

AOJのVolume0埋めに1週間挑戦した結果

こんにちは川です。 プロラボの2個目のアドベントカレンダーのやつの記事ですね。 題名通りのことをやってみました。 時間経過を元に状況をお伝えします。 それまでにvolume0は27個解いていました。 時間経過 12/11(金) プログラミング赤点だったしバリバ…

AOJ 0045 Sum and Average

こんにちは川です。 まぁみての通りです。 ソースコード #include<bits/stdc++.h> using namespace std; int main() { int sumso=0,sumnum=0,co=0,strs=0,ko=0; double sob[2]={0,0},n; string str; while(cin>>str){ n=str.size(); for(int i=0;i<=n;i++){ if(str[i]==','|</bits/stdc++.h>…

AOJ 0036 A Figure on Surface

こんにちは川です。 もうこの問題はバグだしまくりでした。 再帰+αで解きました。 ソースコード #include<bits/stdc++.h> using namespace std; char str[9][9]; int mx[4]={1,0,-1,0},my[4]={0,1,0,-1},moving[4]; void serch(int mo,int y,int x) { for(int i=0;i<4;i++)</bits/stdc++.h>…

AOJ 0032 Plastic Board

こんにちは川です。 気を付けなければならないことは文字から数字を認識することだけでした。 しかしそのあとのコードが汚い。 ソースコード #include<bits/stdc++.h>using namespace std;int main(){ int co=0,co1=0,Rectangle=0,Rhombus=0; double side[3]; char str[300]</bits/stdc++.h>…

AOJ 0031 Weight

www.c-tipsref.com こんにちは川です。 特にないけどexp2関数を使いました。 ソースコード #include<bits/stdc++.h>using namespace std;int main(){ int weight[11],n,co[11],a=0; for(int i=0;i<11;i++)weight[i]=exp2(i); while(cin>>n){ for(int i=10;i>=0;i--){ if(n>=</bits/stdc++.h>…

AOJ 0024 Physical Experiments

こんにちは川です。 これは物理のテスト問題より簡単な奴だった。 ソースコード #include<bits/stdc++.h>using namespace std;int serch(double speed,int floor){ if(speed<9.8*sqrt*1return floor; return serch(speed,floor+1);}int main(){ int n; double x,y,qux; whil</bits/stdc++.h>…

AOJ 0020 Capitalize

こんにちは川です。 見ての通りです。 ソースコード #include<bits/stdc++.h>using namespace std;int main(){ char str; while(scanf("%c",&str)!=EOF){ if(islower(str)!=0)str=toupper(str); cout<</bits/stdc++.h>

AOJ 0019 Factorial

こんにちは川です。 この問題はlong long int 使えばいけますね。 ソースコード #include<bits/stdc++.h>using namespace std;long long int serch(long long int n){ if(n==1)return n; return n*serch(n-1);}int main(){ long long int n; cin>>n; n=serch(n); cout<</bits/stdc++.h>

AOJ 0015 National Budget

こんにちは川です。 この問題は入力の時に文字列でとることに気を付ける以外は特に問題はありませんでしたが、同じコードを何回も書いている部分があり、汚くなってしまいました。気を付けます。 ソースコード #include<bits/stdc++.h>using namespace std;char str[102],st</bits/stdc++.h>…

AOJ 0017 Caesar Cipher

こんにちは川です。 この問題の文字入力がとても苦戦しました。そのほかは特にありませんでした。 c++のことについていろいろと知っていかなければいけない。 ソースコード #include<bits/stdc++.h>using namespace std;int main(){ string str; while(getline(cin,str)){</bits/stdc++.h>…

AOJ 0074 Videotape

こんにちは川です。 この問題はやるだけでした。 ソースコード #include<bits/stdc++.h>using namespace std;int main(){ int ti,mi,se,sammin,thrti,afh,afm,afs; while(cin>>ti>>mi>>se&&ti!=-1&&mi!=-1&&se!=-1){ sammin=120*60-(ti*3600+mi*60+se); afh=sammin/3600;afm</bits/stdc++.h>…

AOJ 0013 Switching Railroad Cars

こんにちは川です。 この解法も特になくやるだけですね。 ソースコード #include<bits/stdc++.h>using namespace std;int main(){ int train[10000],moving,situation=0,ans[10000],n=0,ende=0; while(cin>>moving){ if(moving!=0){ train[situation]=moving; situation++; </bits/stdc++.h>…

AOJ 0011 Drawing Lots

こんにちは川です。 解法は特にこれといったものはないですが、コードが汚い。 精進したい。 ソースコード #include<bits/stdc++.h>using namespace std;int main(){ int w,n,str[30],fin[30],ans[31],add[31],now=0; char stri[7]; cin>>w>>n; for(int i=0;i<n;i++){ cin>>stri; if(stri</n;i++){></bits/stdc++.h>…