[백준] 5355. 화성수학 (C++)

Algorithm|2021. 11. 26. 12:33
반응형
 

5355번: 화성 수학

겨울 방학에 달에 다녀온 상근이는 여름 방학 때는 화성에 갔다 올 예정이다. (3996번) 화성에서는 지구와는 조금 다른 연산자 @, %, #을 사용한다. @는 3을 곱하고, %는 5를 더하며, #는 7을 빼는 연산

www.acmicpc.net

 

int main()
{
  
  int T;
  
  vector<double> ans;
  int num_flag = 0;
  
  cin >> T;

  for(int i=0; i<T+1 ;i++) // 왜 T+1 을 해야 작동하는지 모르겠다.
  {
    double n;
    string num;

    getline(cin,num,'\n'); // 스페이스바 포함 입력
    
    for(int k=0; k < num.size(); k++)
    {
      if(num[k] == ' ' && num_flag == 0) //숫자부분 추출 과정
      {
        num_flag = 1;
        n = stof(num.substr(0,k));
      }
      if(num[k] == '@') n *= 3.0;
      else if(num[k] == '%') n+=5.0;
      else if(num[k] == '#') n-=7.0;
    }
    num_flag = 0;
    ans.push_back(n);
  }

  for(int k=1; k< ans.size(); k++) // 출력과정
  {
    cout.setf(ios::showpoint); // 끝의 0을 표시
    cout << fixed; //소수점 끝의 자리수만 고정
    cout.precision(2);

    cout << ans[k]<< endl; 
     
  }


  return 0;
}
반응형

'Algorithm' 카테고리의 다른 글

[Leetcode] 1154. Day of the Year (C++)  (1) 2021.11.29
[Programmers] 큰 수 만들기 (C++)  (1) 2021.11.29
[백준] 1476. 날짜 계산  (0) 2021.11.26
[백준] 1712. 손익분기점 (C++)  (7) 2021.11.25
[Programmers] 하샤드 수 (C++)  (1) 2021.11.25

댓글()