Online Judge | Problem Set | Authors | Online Contests | User | ||||||
---|---|---|---|---|---|---|---|---|---|---|
Web Board Home Page F.A.Qs Statistical Charts | Current Contest Past Contests Scheduled Contests Award Contest |
WA多次了,真不知序数怎么搞了,已AC的帮忙看看#include <iostream> #include <vector> #include <algorithm> #include <string> using namespace std; string GetSuffix(int num) { string str; if(num>=4 && num<=19) { str = "th"; } else { switch(num%10) { case 1:str ="st";break; case 2:str ="nd";break; case 3:str ="rd";break; default: str ="th"; } } return str; } vector<int> allNum(6001); int main() { const int allFour[4] ={ 2, 3, 5, 7}; int fourNum[4]; int pos[4]={0, 0, 0, 0}; allNum[0]=1; int min; for(int i=1; i<6000; i++) { for(int j=0; j<4; j++) { fourNum[j] = allFour[j]*allNum[pos[j]]; } min=*min_element(&fourNum[0], &fourNum[0]+4); for(int k=0; k<4; k++) { if(fourNum[k]==min) { pos[k]++; } } allNum[i] = min; } int num; while(true) { cin>>num; if(num==0)break; cout<<"The "<<num<<GetSuffix(num) <<" humble number is "<<allNum[num-1]<<"."<<endl; } return 0; } Followed by:
Post your reply here: |
All Rights Reserved 2003-2013 Ying Fuchen,Xu Pengcheng,Xie Di
Any problem, Please Contact Administrator