第十二屆CSP總結

第二次參加CSP 前一次CSP仍是去年年初node

從通知到準備也就一個禮拜準備,大概看了一下往年的題型:ios

第一題:水題算法

第二題:通常都是考點邏輯各類if else嵌套 而後加點排序json

今年卡了個人是一個結構體排序app

很久沒作了果真有點生疏啊函數

附上一段代碼~~~spa

#include<iostream>
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include<algorithm>
using namespace std;
struct node{
    int s;
    int number;
    int e;
};

bool cmp(node a,node b){
    if(a.s<b.s) return true;
    else if(a.s==b.s&&a.e<b.e) return true;
    return false;
}
int main(){
    int n;
    cin>>n;
    int a,b;
    node no[5];
    for(int i=0;i<n;i++){
        cin>>a>>b;
        no[i].s = a;
        no[i].e = b;
        no[i].number = i;
    }
    sort(no,no+n,cmp);
    for(int i=0;i<n;i++){
        cout<<no[i].number<<" ";
    }
}

 

第三題:通常都是String類的操做或者大型模擬題 叫你模擬json存儲,模擬文件目錄,模擬系統權限 然而我並無打完!!!最後交了一個半成品。。。code

OK!附上string的操做函數:對象

#   =,assign() //賦以新值blog

#   swap()   //交換連個字符串的內容

#   += ,append(),push_back()   //在尾部添加字符

#   insert()   //插入字符

例:str.insert(6,str1);  在6的位置插入str1

str.insert(6,str2,13,4)  在str 第6的位置插入str2第13後的4個字符

 

#     erase()  //橡皮擦~刪除字符

#    clear()    刪除所有字符

#   replace()   //替換字符

+   串聯字符串

#  == !=  <  <=  >=  >  compare()  //比較字符串

#   size() length()   字符串數量

#   empty()  //判空

#   substr()   返回某個子字符串

例:str2 = str.substr(0,10)   str2就是str前十個字符串

 

#  compare()

例:string  s=  ("abcd");

s.compare(0,2,s,2,2);   用「ab」和「cd」比較

s.compare(1,2,"bcx",2)  用「bc」和「bc」比較

 

#  find() 

  rfind()

find_first_of()

find_last_of()

find_first_not_of()

find_last_not_of()

  說明:第一個參數是被搜索的對象

第二個參數是string內的搜索起點索引(無關緊要)

第三個參數是搜索的字符格式(無關緊要)

注意:返回是第一個字符的索引 沒有找到則返回String::npos

 

 

第四題:純算法題 有最短路(dijikstra算法,spfa算法) ,dp動態規劃,bfs,dfs,spfa

第五題:通常不看 若是有時間 看一眼暴力作一下

 

 哎!一句話 重在參與 明年再來!

相關文章
相關標籤/搜索