intさわだんのBlack History

刹那的レジェンドになりたい。

C++

POJ(PKU) 2456 Aggressive cows

蟻本にある。 二分探索使わなくても解けるのだろうか。 #include <cstdio> #include <algorithm> using namespace std; const int INF = 1000000001; int n,c,p[100001]; bool ch(int x){ int nau = 0,sum = 1,pre = p[nau]; while(nau < n && sum < c){ if(pre + x <= p[nau]){</algorithm></cstdio>…

Codeforces 248A&B

こどふぉ惨敗。次はもっと解きたい。せめて3問A #include <cstdio> #include <algorithm> #include <cstdlib> #include <cstring> using namespace std; int main(){ int n,w[102]; int a100 = 0,a200 = 0; scanf("%d",&n); for(int i = 0;i < n;i++){ scanf("%d",&w[i]); if(w[i] == 100){ a100++</cstring></cstdlib></algorithm></cstdio>…

SRM401 (div.2) 250point

がち黒歴史コードになった。 あとで直したい。 #include <cstdio> #include <iostream> #include <algorithm> #include <vector> #include <cstring> using namespace std; class DreamingAboutCarrots{ public: int carrotsBetweenCarrots(int x1, int y1, int x2, int y2){ int ans = 0; if(x1 > x2){ int</cstring></vector></algorithm></iostream></cstdio>…

Codeforces #1A

問題文算数の問題。 解法は顕著。なんかショートコーダーみたいになった。 #include <iostream> #include <algorithm> using namespace std; int main(){ long long int n,m,a,t=1; cin >> n >> m >> a; cout << max(t,(n % a == 0 ? n / a : n / a + 1))*max(t,(m % a == 0 ? m /</algorithm></iostream>…

AtCoder Beginner Contest

問題文 http://abc002.contest.atcoder.jp/tasks/abc002_3解法やるだけ。 #include <cstdio> #include <iostream> #include <algorithm> using namespace std; int main(){ int xa,ya,xb,yb,xc,yc; int ans; scanf("%d%d%d%d%d%d",&xa,&ya,&xb,&yb,&xc,&yc); int a = xb - xa; int b = yb </algorithm></iostream></cstdio>…

SRM400 (div.2) 250point

400番台を解いていくことにしよう。やるだけ。JOI予選2ないし3に出てきそうなレベル #include <algorithm> #include <vector> using namespace std; class GrabbingTaxi{ public: int minTime(vector <int> tXs, vector <int> tYs, int gX, int gY, int walkTime, int taxiTime){ int ans </int></int></vector></algorithm>…

Codeforces 100A

問題文⇒URL問題概要をパパッとすると、整数値n(部屋に入れる丸テーブルの数)、R(円形の部屋の半径)、r(円形テーブルの半径)が与えられて(例:n = 4,R = 10,r = 4)、部屋にテーブルが全部入るか入らないか答えよという問題。 テーブル同士かぶったりしてはい…

AOJ0579 暑い日々

joi-yosen~DP~ #include <cstdio> #include <algorithm> using namespace std; int main(){ int d,n; int kion[203] = {0}; int huku[203][3] = {0}; int dp[203][203] = {0}; scanf("%d%d",&d,&n); for(int i = 0;i < d;i++){ scanf("%d",&kion[i]); } for(int i = 0;i < n;i++</algorithm></cstdio>…

POJ1458 Common Subsequence

あの有名な最長共通部分列問題。典型的な問題。 #include <cstdio> #include <iostream> #include <algorithm> #include <cstring> using namespace std; int main(){ char a[2000],b[2000]; while(cin>>a>>b){ int dp[1001][1001] = {0}; int alen = strlen(a); int blen = strlen(b); for(int i =</cstring></algorithm></iostream></cstdio>…

AOJ0569 イルミネーション

致命的なミスをして一発ACできなかったから精進。解法:なし。 #include <cstdio> using namespace std; int dy[] = {-1,0,1,1,0,-1}; int dx0[] = {0,1,0,-1,-1,-1}; int dx1[] = {1,1,1,0,-1,0}; int w,h,ans = 0; int m[110][110] = {0}; void dfs(int y,int x){ </cstdio>…

AOJ0558 チーズ

これほど汚いソースを見たことがない。 戒めのためにはります。 #include <cstdio> #include <queue> #include <cstdlib> using namespace std; int h,w,n; int nx,ny; int dx[] = {0,1,0,-1}; int dy[] = {1,0,-1,0}; int ans = 0; char m[1003][1003]; void search(int ty,int tx,c</cstdlib></queue></cstdio>…

codeforces 240A(div.2)

実装やるだけ。。。世界一英語読めないからつらい。問題文← #include <cstdio> using namespace std; int main(){ int n,m; int dat[102] = {0}; int num[102] = {0}; scanf("%d%d",&n,&m); for(int i = 0;i < m;i++){ scanf("%d",&dat[i]); } for(int i = 0;i < m;i</cstdio>…

AOJ0568 パスタ

JOI予選問題解法:典型的なDP 問題しっかり読もうと思った #include <cstdio> using namespace std; int main(){ const int mod = 10000; int n,k; int yotei[102]={0}; int dp[102][4][2] = {0}; scanf("%d%d",&n,&k); for(int i = 0;i < k;i++){ int a,b; scanf("%d</cstdio>…

AOJ0578 看板

joi予選の問題。こういうのめっちゃ苦手だけど成長したのか瞬殺だった。 解法:線形探索 #include <cstdio> #include <cstring> using namespace std; int main(){ int n,ans=0; char name[27],s[102][102]; scanf("%d",&n); scanf("%s",&name); for(int i = 0;i < n;i++){ sca</cstring></cstdio>…

AOJ0567 最高のピザ

joi予選の問題。解法:ソートのみ一見難しそうに見えるが読んでみると解法が顕著で簡単な問題。(sortのgreater<int>()って#include <iostream>必要だったんですね。。。) #include <cstdio> #include <algorithm> #include <iostream> using namespace std; int main(){ int n,a,b,c,d[</iostream></algorithm></cstdio>…

POJ1163 The Triangle

問題文解法:DP(上の二つのやつのでかいほうを足していくだけ) #include <cstdio> #include <algorithm> using namespace std; int main(){ int n; int t[102][102] = {0}; int dp[102][102] = {0}; scanf("%d",&n); for(int i = 1;i <= n;i++){ for(int j = 1;j <= i;j++){ sca</algorithm></cstdio>…

SRM195 (div.2) 250point

やるだけ #include <cstdio> #include <iostream> #include <algorithm> #include <vector> using namespace std; class Rounder{ public: int round(int n, int b){ int ans = 0; int flag = 0; int nau = 0; int sa = n; while(flag <= 2){ nau += b; if(sa >= abs(n-nau)){ sa = abs(n-nau); an</vector></algorithm></iostream></cstdio>…

AOJ0596&AOJ0258

とりあえず二問。AOJ0595非常に汚い #include <cstdio> using namespace std; int main(){ int n; char s[1003]; int dp[1003][8] = {0}; scanf("%d",&n); scanf("%s",&s); if(s[0] == 'J'){ dp[1][0] = 1; dp[1][3] = 1; dp[1][5] = 1; dp[1][6] = 1; }else if(s[0]</cstdio>…

SRM599 (div.2) 250point

やるだけ解法:典型的なソートかわいい犬がみかんを食べる問題JOI予選の二問目あたりに出そうな問題。 近年競争率上がってるから一問目かも。 #include <cstdio> #include <iostream> #include <algorithm> #include <vector> using namespace std; class MiniatureDachshund{ public: int maxMika</vector></algorithm></iostream></cstdio>…

Codeforces 421A(Div.2)

問題文👈やるだけ。英語理解できません。とりあえずめんどいからiostreamを使ってしまう悪い癖 #include <cstdio> #include <iostream> using namespace std; int main(){ int n,a,b; int da[102] = {0}; int db[102] = {0}; scanf("%d%d%d",&n,&a,&b); for(int i = 0;i < a;i++)</iostream></cstdio>…

pck(aoj) のやるだけ問題集

AOJ0173やるだけ #include <cstdio> #include <iostream> using namespace std; int main(){ char s[17]; int a,b; for (int i = 0;i < 9;i++){ cin >> s >> a >> b; cout << s << " "; cout << a + b << " "; cout << a * 200 + b * 300 << endl; } return 0; } AOJ0174yaruda</iostream></cstdio>…

AOJ 0536 JOI 予選過去問 シャッフル

進捗アリです。 めんどくさかった 予選でフィードバックないから死んじゃう 解法はjoi公式の奴と一緒です。はい。ちょっとおんなじことを繰り返している部分があるけど直すのめんどいんですいませぇん //こんな問題予選に出たら解きたくないわ~ #include <cstdio> #</cstdio>…

第7回日本情報オリンピック 予選3 カードゲーム

やるだけつらい #include <cstdio> using namespace std; int main(){ while(1){ int n; bool t[203],h[203]; scanf("%d",&n); if(n == 0) break; for(int i = 0;i <= n*2;i++){ t[i] = false; h[i] = false; } for(int i = 1;i <= n;i++){ int tmp; scanf("%d",&tmp</cstdio>…

POJ 1088 滑雪

問題文が中国語⇒英語でさえ読めないのに中国語とかむり。なんとか推測して頑張りました。DPの問題解きたいと思って、簡単そうなのを見つけたのがこれだったが、これはDPと言えるのか❓??えーと計算量は、O(シラン)ぐらいです(かなり適当なオーダー)なんか…

第5回日本情報オリンピック 予選 問題3

ねむい。 #include <cstdio> #include <iostream> #include <cstring> using namespace std; int main(){ while(1){ int n; int ans = 1; int s[7] = {0,1,2,3,4,5,6}; scanf("%d",&n); if(n == 0) break; for(int i = 0;i < n;i++){ char sai[10]; cin >> sai; int t1=s[1],t2=s[2],t3=</cstring></iostream></cstdio>…

第5回日本情報オリンピック 予選 問題2

Nの範囲が記述されていないから、ちょっとダメな問題ではないか…まあいいや。 map使いたかったけどキーをcahrにしたら闇になるから闇。実行速度の関係から、あんまりiostream系を使うのはよくないと思います。 #include <iostream> using namespace std; int main(){ w</iostream>…

JOI本選過去問 第8回 日本情報オリンピック本選 5問目 認証レベル

なんとか通りました。つかれた。問題文はこちら世界スパッゲッティソース大会で決勝にいけそうなソースです。joi本選の練習も兼ねて、mapとかvectorとかqueueとかpairとかいろんなの使ってみました。 なのでとても複雑になってしまった。。。実行時間もそこ…

JOI本選過去問 第8回 日本情報オリンピック本選 4問目 散歩

問題分は「AOJ 0541」とでもググってください。 DPでやりました。 N-1回目までの散歩でそれぞれ何回その場所に通るか回数をdpに入れていき、その合計が偶数なら何もしない、奇数なら「南」「東」を反転させ、N回目をシミュレーションしていき感じです。 おそ…

JOI本選過去問 第11回 日本情報オリンピック本選 3問目 夜店

問題はこちらなんかいろいろめんどくさかった。 メモリに気をつけよう(節約しました 細かいとこばぐんないようにしよう。 あとは気合 ソースとても汚いけどまわりと比較して実行時間そこまで遅くないので吉としよう。 #include <cstdio> #include <algorithm> #include <string.h> using </string.h></algorithm></cstdio>…

JOI本選過去問 第8回 日本情報オリンピック本選 2問目 ピザ

問題文はこちら。 瞬殺問題。 二分探索地味に初めてでした。 一発ACはたのしい。 #include <cstdio> #include <algorithm> #include <vector> using namespace std; int main(){ while(1){ long int d = 0; long int n = 0; int m = 0; long int ans = 0; vector<long> dat; vector<long>::iterator </long></long></vector></algorithm></cstdio>…