c466 - 4th CPSC Problem 2-傅趴滴
題目描述
題目描述了傅趴滴語法,其中負號的數量決定了最終數值的正負號。如果負號數量為奇數,則輸出負數,否則輸出正數。輸入是一個以多個負號開頭的字串,後跟一個非負整數。目標是將這個字串轉換為標準整數。
解題思路
程式碼首先計算字串開頭的負號數量。如果字串以 '0' 開頭,則直接輸出 '0'。否則,如果負號數量為奇數,則輸出一個負號,然後輸出剩餘的字串。如果負號數量為偶數,則直接輸出剩餘的字串。
複雜度分析
- 時間複雜度: O(n),其中 n 是輸入字串的長度。程式碼需要遍歷字串以計算負號的數量和輸出結果。
- 空間複雜度: O(1),程式碼只使用了常數級的額外空間。
程式碼
#include <iostream>
#include <string>
using namespace std;
int main(){
string a;
cin >> a;
int i;
for(i=0;a[i]=='-';i++){};
if(a[i]=='0')
cout << '0';
else{
if(i%2)
cout << '-';
for(;a[i]!='\0';i++)
cout << a[i];
}
}