程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> SRM 584 第一次玩TopCoder。。。只水題一道。。。

SRM 584 第一次玩TopCoder。。。只水題一道。。。

編輯:C++入門知識

第一次topcoder,以前老感覺沒有資格去做tc,cf什麼的,現在已經慢慢接觸了。

感覺還可以,還是有讓我們這些蒻菜安慰的水題。

tc的確很好玩,用客戶端比賽,還有各種規則,而且還是只編寫一個類提交上去,最後還能cha別人(雖然我還沒cha過),具體規則看大神寫的這篇文章。

好吧,我的第一次TC的SRM就只刷出了第一道250P的水題,題目字體太小了,看題目看了老半天,然後編寫完調試出來,還花了挺長時間去把程序改成類,在客戶端上compile,蛋疼的是類的後面的分號忘記寫找了好長時間。。。。。

最後搞完submit已經過了一半時間了,不知道怎麼看有沒有ac,在厚著臉皮群裡問了一下,發現得看sumary的得分,我第一道250分得到127分。。。

然後,然後就沒有然後了,第二題好不容易看懂沒有思路,於是卡到challenge,翻別人代碼看到人家都有很熟練的代碼,我還是第一次,什麼也不懂。

看來以後還要加油了。。。

 


難得第一次,就把代碼貼出來,因為實在水。。。。

題目要求輸入兩個string,求出它們的前綴字符串拼在一起能夠構成幾種不同字符串。用stl的string+vector幾行就搞定。

代碼:

 

 
#include <string>   
#include <set>   
using namespace std;  
class TopFox {  
public:  
    int possibleHandles(string familyName, string givenName) {  
        set <string> s;  
        string tmp;  
        for (int i = 1; i <= familyName.size(); i++)  
            for (int j = 1; j <= givenName.size(); j++) {  
                tmp = familyName.substr(0, i) + givenName.substr(0, j);  
                s.insert(tmp);  
            }  
        return s.size();  
    }  
};  

#include <string>
#include <set>
using namespace std;
class TopFox {
public:
    int possibleHandles(string familyName, string givenName) {
        set <string> s;
        string tmp;
        for (int i = 1; i <= familyName.size(); i++)
            for (int j = 1; j <= givenName.size(); j++) {
                tmp = familyName.substr(0, i) + givenName.substr(0, j);
                s.insert(tmp);
            }
        return s.size();
    }
};

 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved