paizaの森練習問題コンテスト過去問題13

paizaの森練習問題コンテスト(2023年10月開催)の過去問です。

【先頭が一致】コード

reader.on('close', () => {
   const [a, b] = [lines[0], lines[1]];
   console.log(b.startsWith(a) ? 'Yes' : 'No');
   console.log(a.startsWith(b) ? 'Yes' : 'No');
});
hogeちゃんの画像

startsWith(s) で 文字列の先頭が s で始まるかどうかの真偽値を取得できました 。

【合計と平均】コード

reader.on('close', () => {
   const n = Number(lines[0]);
   let sum = 0;
   for (let i = 1; i <= n; i++) {
      sum += Number(lines[i]);
   }
   console.log(sum);
   console.log(Math.floor(sum / n));
});
hogeちゃんの画像

平均値は sumn で割って Math.floor()で小数点以下を切り捨てました。

【二等辺三角形】コード

reader.on('close', () => {
   const [a, b, c] = [lines[0], lines[1], lines[2]];
   console.log(a === b || b === c || c === a ? 'Yes' : 'No');
});
hogeちゃんの画像

二辺が一致すれば ‘Yes’ さもなくば ‘No’。

【飽き性】コード

reader.on('close', () => {
   const [a, b] = lines[0].split(' ').map(Number);
   const d = (a + b) / 2;
   console.log(Math.min(a, b), d - Math.min(a, b));
});
hogeちゃんの画像
異なる種類を食べられる日は Math.min(a, b)。
同じ種類の食べ物を食べる日はd – Math.min(a, b)

【占い – その 2】コード

reader.on('close', () => {
   const n = Number(lines[0]);
   const S = lines[1].split(' ').map(Number);
   const sum = S.reduce((a, c) => a + c);
   console.log(sum % 7 === 0 ? 'Yes' : 'No');
});
hogeちゃんの画像

sum を 7 で割った あまりが 0 なら ‘Yes’ さもなくば ‘No’。

【連結判定】コード

reader.on('close', () => {
   const adjacency_List = (a, b) => {
      List[a].push(b);
      List[b].push(a);
   };
   const List = []; // 隣接リスト 
   const [N, M] = lines[0].split(' ').map(Number);
   for (let i = 0; i < N; i++) {
      List.push([]);
   }
   for (let i = 1; i <= M; i++) {
      const [A, B] = lines[i].split(' ').map(e => e - 1);
      adjacency_List(A, B);
   }
   const dfs = (just_now, linked) => {
      linked[just_now] = true;
      for (const next of List[just_now]) {
         if (linked[next]) {
            continue;
         }
         dfs(next, linked);
      }
      return linked;
   };
   const points = new Array(N).fill(false);
   console.log(dfs(0, points).includes(false) ? 'No' : 'Yes');
});
hogeちゃんの画像

List は無効グラフの隣接リスト。

 

コメント