#!/bin/bash

HOMECPU="homecpu.txt"
CURRENTCPU=$(grep -m1 'model name' /proc/cpuinfo | awk -F':' '{print $2}' | sed -E 's/^[ \t]+//')

# Извлекаем только модель (например, i7-9700K из полного названия)
EXTRACT_MODEL() {
    echo "$1" | grep -oE '[iI]ntel|[aA]md|[iI][0-9]*-[0-9A-Z]*|[rR]yzen|[0-9A-Z]*-[0-9A-Z]*' | head -1
}

CURRENT_MODEL=$(EXTRACT_MODEL "$CURRENTCPU")

gcc ./code.c -o ./run

if [ ! -f "$HOMECPU" ]; then
  echo "Домашняя модель CPU не найдена, используем текущую: $CURRENT_MODEL"
  CPUMODEL="$CURRENT_MODEL"
else
  HOMECPU_CONTENT=$(<"$HOMECPU")
  HOME_MODEL=$(EXTRACT_MODEL "$HOMECPU_CONTENT")
  echo "Домашняя модель CPU: $HOME_MODEL"
  echo "Текущая модель CPU: $CURRENT_MODEL"

  if [ "$CURRENT_MODEL" = "$HOME_MODEL" ]; then
    echo "Модели совпадают, используем текущую модель"
    CPUMODEL="$CURRENT_MODEL"
  else
    echo "Модели не совпадают, используем домашнюю модель"
    CPUMODEL="$HOME_MODEL"
  fi
fi

# Отправляем модель CPU и ввод для программы
( printf "%s\n1\n" "$CPUMODEL"; cat ) | ./run
