PAT乙級1010——一元多項式求導
阿新 • • 發佈:2021-11-27
題目:
題目詳情 - 1010 一元多項式求導 (25 分) (pintia.cn)
我的程式碼:
#include <iostream> #include <vector> #include <algorithm> using namespace std; int main() { vector<int> numlist; int a; while (cin>>a) { numlist.push_back(a); if (getchar()=='\n') {break; } } int arr[numlist.size()]; copy(numlist.begin(),numlist.end(),arr); vector <int> de; //輸出結果的陣列 int l=sizeof(arr)/sizeof(int); for (int i=0;(i+1)<l;) { if (arr[i+1]!=0 && arr[i]!=0) { int a=arr[i]*arr[i+1]; de.push_back(a);int b=arr[i+1]-1; de.push_back(b); } i+=2; } vector<int>::iterator it; //it實際上是一個地址 for (it=de.begin();it!=de.end();++it) { if (it==de.begin()) cout<<*it; else cout<<' '<<*it; }return 0; }
執行結果:
我傻了,我又搞複雜了:
#include<iostream> using namespace std; int main() { int a,b; int x=1; while(cin>>a>>b)//輸入 { if(b==0) break;//捨棄 if(!x) cout<<" "; else x=0; cout<<a*b<<" "<<b-1; } if(x) cout<<"0 0"; return 0; }