予鈴

競プロとか備忘録とか…

ABC038 D - プレゼント

問題概要 D - プレゼント 解く前に考えていたこと ・AOJのマトリョーシカと非常に似ている。 ・ただし、この問題は制約がで解は部分点しか取れない。 ・LISであることは間違えないので、比較関数を書き換えて蟻本にあるのLISを書くがWA ・途中でpair型dpを更…

VimでIndentlineが動かなかった話

VimでIndentlineが動かなったのでメモ。 調べてみると、githubのIssueで報告されていました。 github.com 以下日本語でもメモを残しておきます。 まずターミナルで vim --versionを実行します。すると、以下のような画面が現れるはずです。ここで、-conceal …

ICPC 2018国内予選

国内予選に後輩(わたあめくん)と先輩とともに参加しました。 開始1時間前 大雨の影響で大学までの電車がなかったので、大阪の別キャンパスで参加することになる。 yebiが到着 → アナウンス「全館4時半で閉館です☆」(は?) わたあめくんと合流して、帰宅難…

vectorsのテンプレートを詳しく見る

はじめに vectorsテンプレート 可変引数テンプレート decltypeについて 参考 はじめに 競プロやってると、多次元のvectorをよく使うことがあります。非常に便利なんだけど、宣言がめんどくさい。 例えば、3次元のvectorを宣言しようとすると、 vector<vector<vector<int>>>v(10,</vector<vector<int>…

B - Construct Sequences

B - Construct Sequences 解く前に考えてたこと ・配列の要素数を超える大きい公差を持った等差数列を考えて、順列による差を相殺したい。 ・具体例を考えるも、一般化できずに死亡、特に、入力 の値によって、数列を構築しようとしたのが問題かもしれない。…

CS Academy No Prime Sum

問題概要 csacademy.com個の相異なる数字が与えられる。2つの和が素数にならないように数字を取り除くときき、最小の数と取り除く数字を答えよ。 解く前に考えていたいこと ・2つの色に彩色したい気分になった。しかし、グラフは木ではない。 ・グラフがたく…

RUPC day3: AA グラフ (AA Graph)

問題概要 https://onlinejudge.u-aizu.ac.jp/#/challenges/sources/VPC/HUPC/2869アスキーアートでグラフが与えられるので最短経路を求める問題。 個人的にすごく好き。 注意するとこ ○|○○○ ○|○G○ ○|○○○ この場合はうまく弾かないと行けない。 #include<bits/stdc++.h> u</bits/stdc++.h>…

CS Academy Array Removal

csacademy.com 問題概要 要素の数列が与えられ、要素のsubarrayが与えられる。 回連続する数列の和の最大値を出力する。ただし、subarrayの番目の数字は使えなくなる。 解く前に考えてたこと DP : 不可能そう。使えない数字が出るたびに引くと間に合わない S…

RUPC2018 参加記

RUPC2018に参加しました。 Day 0 Day 1 Day2 Day3 最後に Day 0 今回は作問チームに関わってもおらず、何も準備してません。ごめんなさい。 Day 1 家で寝てました。 Day2 ・立命館大学 プロジェクト団体 RiPP○が9時に来いって言われたので早起きした。 ・久…

D- People on a Line

D - People on a Lineコンテスト中に解けなくて悲しい思いをした問題。 コンテスト中に考えてたこと ・全点対最短路を求めることができたら良さそう。 ・有効辺のみなので、dfs(コンテスト中はDijkstraをした)時にusedとdを持つと解ける。 (つまりdfsごとに…

RiPProを休部する話

RiPProを休部することにしました。 ※この記事は完全にポエムです。 理由をメンヘラにならないように簡潔に書く。 ①留学の準備のために1日3,4時間ほど勉強する必要がでてきた。 留学のために2017年の前半を溶かしたといっても過言ではないので、留学はしっか…

D-塗り絵

D: 塗り絵 - AtCoder Beginner Contest 036 | AtCoder個の島があり、個の橋がある。 島を白または黒に塗っていく。ただし、両端の島を黒で塗ることはできない。 色の塗り方が何通りあるか求める問題です。グラフ上の頂点を、黒色で塗るか、白色で塗るかをメ…

D - Mixing Experiment

D: Mixing Experiment - AtCoder Beginner Contest 054 | AtCoder薬品をにする最小費用を求める問題。 制約も小さいので、でナップサックをすると解ける。 更新をを薬品の最小の比だと思い込んでて時間を溶かした。 具体的には、漸化式を int div=(int)gcd((…

D - 3N Numbers

D: 3N Numbers - AtCoder Beginner Contest 062 | AtCoder 以前解けなかった問題が、ヒントで解けるようになったので… 前半の要素と後半の要素の差を最大にすれば良い。 中間の要素(配列の添字だと)を最適に選べば良い。 PriorityQueueを使って、前半要素の…

Xcodeで<bits/stdc++.h>を使いたい。

Xcodeでを使いたい人向けへのメモ。 まずはターミナルを開いて、次のパスへ移動する /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include/c++/v1 ここから、bitsの中身を拝借する。 mkdirコマンドでbitsというファ…

ABC 051 D - Candidates of No Shortest Paths

D: Candidates of No Shortest Paths - AtCoder Beginner Contest 051 | AtCoder無向連結グラフの最短距離 に含まれない辺の数を求める問題です。 含まれない辺 = 全点間最短経路を求めたときに、更新された辺 が含まれない辺ということがわかります。 の範…

B - PackDrop

葉から根に向かって最小値を更新していき、dfsで解くことができます。 シンプルで好きです。 #include<bits/stdc++.h> #define rep(i,n) for(int i=0;i<n;i++) using namespace std; #define mp make_pair #define INF 1e9 int ans=0; vector<vector<int>>edge(1001,vector<int>()); vector<int>cost(1001,INF); void dfs(int vertex){ if(edge[vertex].size()==0)ret…</int></int></n;i++)></bits/stdc++.h>

ACPC2017-参加記-

ACPCの参加記です。 0日目 ひたすら新幹線で移動してました。 痛すぎてお尻4つに割れた— yebi (@sigsigma19) 2017年9月17日 郡山からズに移動する途中の電車は、ひたすら同じ風景が続いてて、やはり大悪魔や植物が競プロしてたり校内にセグ木が生えている大…

AOJ -2819 Country in Distortion

Country in Distortion | Aizu Online Judge 拡張Dijkstraの問題です。 各頂点に対して、頂点に到着した速度で次の辺へのコストが代わるので、今回はとして頂点からの距離を持ちます。 ここで注意しないと行けないのが、無向グラフかつコストが0の辺が存在す…

AOJ Highway Express Bus

http://judge.u-aizu.ac.jp/onlinejudge/description.jsp?id=0212最短経路を求める問題ですが、道中に枚割引券を使うことができます。 として、拡張Dijkstraをやります。 は今持っている割引券の枚数です。 nowに対して、割引券を使う方と使わない方をqueにp…

ICPC参加記

大会前 いつのまにか自分のMacで参加することになってたので、環境整備係してました。 以前のチーム練習で、毎回include書くのはめんどくさいとわかったので、bitsを入れたりg++のバージョンを上げたりしてました。 チームメイトの素数うさぎ(@wk1080id)とし…

ARC-B ツリーグラフ

B: ツリーグラフ - AtCoder Regular Contest 030 | AtCoder頂点からなるツリーグラフが与えられます。 いくつかの頂点にはお宝があり、そのお宝をすべて回収し、最初の頂点に戻ってくるまでの最小コストを求める問題です。各頂点について考えます。 現在見て…

AOJ -0235 Sergent Rian

問題文:Sergeant Rian | Aizu Online Judge すべての橋を爆破する最短コストは、最もコストが掛かる島(葉ではなく、1から到達するまでに最もコストがかかる島)を爆破する順番を最後にすれば良い。 サンプルを最短コストになるように鉛筆でなぞると、最もコス…

D-Simple Knapsack

コンテストに参加しなかったのですが、想定解ではない方法で解いたので記事にします。 ABCのD問題、重さを圧縮したらdpで解けるんじゃねと思ってやってるんですが無限にWAを生成してます。なぜ— yebi (@sigsigma19) 2017年5月2日解法は,重さの制約が特殊なの…

Kansai Camp 参加記

3月26~3月29日にかけて、KMC(京都大学マイコンクラブ)とNAIST、RiPProで行った合同合宿の参加記です。 全部書いてると長くなるので、コンテストの内容とかはおいおい書くつもりです。 1日目 2日目 3日目 最終日 まとめ 1日目 集合場所も知らず、準備も全くせ…

典型ナップサックを1次元配列で解く。

B - 書き換え(Rewrite) の問題を解く。 二次元DPで解くと、 時間の時に個書類を選んだ(or使わなかった)ときの最大値で という漸化式になる。時間のときの最大の価値 となるdp配列を考えます。 ①dp配列を逆順(mから0)に更新していくと、重複して更新するこ…

RUPC 2017 参加記

0日目 基本的に事務的な準備をしてました。 問題文や解法の議論に全く参加できなかったので、来年はそういう積極的に参加したい。 さて、明日のコンテストは立命勢の日ですが今年はなんと阪大勢とのコラボです!!☺️そしていつもよりコンテストが1時間長いで…

ABC C - Factors of Factorial

N!の約数の個数を数える問題。 の数字を片っ端から素数で割っていく。 は添字に素数を持ち、N!の素因数の数を持つ。 の値を初めて更新するとき()は、が含まれるからにしてる。 #include<iostream> #include<string> #include<cstdio> #include<algorithm> #include<stack> #include<queue> #include<vector> #include<cmath> #in</cmath></vector></queue></stack></algorithm></cstdio></string></iostream>…

ABC C-Brute-force Attack

制約がだったのでnext_permutationだと思ったけど違った。再起できれいに書けてAC。辞書順ってところに時間を取られすぎてしまった… #include<iostream> #include<string> #include<cstdio> #include<algorithm> #include<stack> #include<queue> #include<vector> #include<cmath> #include<utility> #include<set> #include<complex> #include<map> #define</map></complex></set></utility></cmath></vector></queue></stack></algorithm></cstdio></string></iostream>…

ARCのB :回文分割

個人的にすごく苦しんだ。(同期はプログラミング始めて二ヶ月でACしてる) 偶奇に分けて、奇数なら2で割った値をに足す。 を2で割ると"偶数のペア"の数がわかるから、奇数にいくつ肉付けできるかがわかる。 (イメージは、奇数は(1+偶数)になっているから、'…