elchika.com
ドットマトリックス LED をダイナミック点灯させて文字を表示しようとしたようです。遅延があって上手くいかなかったそうです。io.animationという api はネットワーク経由であっても高速・正確な IO の操作が行なえるそうで、それを使えば良かったかもしれません。投稿の締め切りを守るのも良いかと思われます。
elchika.com
MH-Z19BというCO2センサを使って室内のCO2濃度を測定したようです。CO2センサは今だと秋月電子でMH-Z19Cが販売されていて気軽に購入できますが、ほんの少し前まではもっと高額な部品しか流通しておらず、MH-Z19Bも海外から調達する人が多かったようです。長時間自宅で活動せざるを得ない昨今、部屋の CO2 濃度が高いかモニタ出来ると良さそうです。
#include <algorithm>#include <iostream>#include <string>#include <vector>usingnamespace std;
int main() {
// game loopwhile (1) {
int N; // total number of players (2 to 4).int P; // your player number (0 to 3).
cin >> N >> P;
vector<int> X0(4),Y0(4),X1(4),Y1(4);
for (int i = 0; i < N; i++) {
cin >> X0[i] >> Y0[i] >> X1[i] >> Y1[i];//各プレイヤー情報
}
cout<<"LEFT"<<endl;//ただ左に進むだけ
}
}
ただただ左に進むだけ…!こんなコードでもちゃんと動きます。ただめちゃくちゃ弱いですが。
まず気づくのが自殺してしまうことですね。
壁にぶつかったり、プレイヤーがすでに通った場所を通ったり…
とりあえず自殺しないコードを
int main()
{
vector<vector<bool>> have(20,vector<bool>(30,true));
while (1) {
int N;
int P;
cin >> N >> P;
vector<int> X0(4),Y0(4),X1(4),Y1(4);
for (int i = 0; i < N; i++) {
cin >> X0[i] >> Y0[i] >> X1[i] >> Y1[i];
have[Y1[i]][X1[i]]=false;
}
int dx[]={0,-1,0,1};
int dy[]={1,0,-1,0};
string order[]={"DOWN","LEFT","UP","RIGHT"};
for(int i=0;i<4;i++){
int nowx=X1[P]+dx[i];
int nowy=Y1[P]+dy[i];
if(nowx>=0&&nowx<30&&nowy>=0&&nowy<20&&have[nowy][nowx]){
cout<<order[i]<<endl;
break;
}
}
}
}