日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > c/c++ >内容正文

c/c++

C与C++ 算法笔记中的代码

發布時間:2023/12/10 c/c++ 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C与C++ 算法笔记中的代码 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

EOF使用:
MAC系統:輸入結束后需要—>回車鍵—>(control+D)。即可結束輸入。
windows系統:輸入結束后需要—>回車鍵—>(control+Z)—>回車鍵

C++ 這里的 = 拷貝是值拷貝,會得到一個新的數組

class Solution { public:void rotate(vector<vector<int>>& matrix) {int n = matrix.size();// C++ 這里的 = 拷貝是值拷貝,會得到一個新的數組auto matrix_new = matrix;for (int i = 0; i < n; ++i) {for (int j = 0; j < n; ++j) {matrix_new[j][n - i - 1] = matrix[i][j];}}// 這里也是值拷貝matrix = matrix_new;} };

begin()函數和end()位于iteartor;
而front()和back()位于vector list deque and etc…

#include <iostream> #include <vector> using namespace std; int main() { vector<char> v1; vector<char>::iterator iter1; vector<char>::iterator iter2; v1.push_back('a'); v1.push_back('b'); v1.push_back('c'); v1.push_back('d'); cout << "v1.front() = " << v1.front() << endl; cout << "v1.back() = " << v1.back() << endl; iter1 = v1.begin(); cout << *iter1 << endl; iter2 = v1.end()-1; //v1.end()指向的是最后一個元素的下一個位置,所以訪問最后一個元素,所以:iter2 = v1.end() - 1 是使iter2指向最后一個元素 cout << *iter2 << endl; return 0; }

C++ 標準模版庫STL

除開vector和string之外的STL容器都不支持*(it+i)的訪問方式
vector:向量/變長數組

Vector<類型>標識符(最大容量,初始所有值) 以及vector< vector<int> > dp(m, vector<int>(n) )常見定義方法:(1) vector<int> a(5); //定義了5個整型元素的向量(<>中為元素類型名,它可以是任何合法的數據類型),但沒有給出初值,其值是不確定的。(2)vector<int> a(5,1); //定義了5個整型元素的向量,且給出每個元素的初值為1(3)vector<int> a(b); //用b向量來創建a向量,整體復制性賦值(4)vector<int> a(b.begin(),b.begin+3); //定義了a值為b中第0個到第2個(共3個)元素(5)int b[7]={1,2,3,4,5,9,8};vector<int> a(b,b+7); //從數組中獲得初值vector< vector<int> > v(m, vector<int>(n) );定義了一個vector容器,元素類型為vector<int>,初始化為包含m個vector<int>對象,每個對象都是一個新創立的vector<int>對象的拷貝,而這個新創立的vector<int>對象被初始化為包含n個0。 #include<vector> using namespace std; 定義:vector<int> name;vector<int> vi[100];vector<vector<int> > name; 訪問:下標 vi[index]迭代器 vector<int>::iterator it = vi.begin();通過*it來訪問vector里的元素 函數:push_back()pop_back()size()clear()insert(it,x)erase()

set:集合 內部自動有序且不含重復元素

#include<set> using namespace std; 定義:set<int> name; 訪問:迭代器 set<int>::iterator it;通過*it來訪問set里的元素 函數:insert()find(value) 返回set中對應值為value的迭代器erase()size()clear()

string字符串:

#include<string> using namespace std; 定義: string str; 訪問:下標:str[i]如果要讀入和輸出整個字符串,則只能用cin和cout迭代器: string::iterator it; 函數:operator+=str1+=str2; //將str2直接拼接到str1上length()/size()insert()erase()clear()substr()string::npos:-1find()replace()

map映射:map會以鍵從小到大的順序自動排序,map的鍵和值是唯一的

#include<map> using namespace std; 定義:map<string,int> mp; 訪問:下標:mp['c']迭代器 map<char,int>::iterator it;通過 it->first 來訪問鍵 it->second來訪問值 函數:find(key) 返回鍵為key的映射的迭代器erase()size()clear()

queue 隊列:

#include<queue> using namespace std; queue<int> q; push() pop() front() back() empty() size()

priority_queue 優先隊列:隊首元素優先級最大

#include<queue> using namespace std; priority_queue<int> q; push() pop() top() empty() size() priority_queue<int,vector<int>,greater<int> >q; //最小的元素放在隊首 struct fruit{string name;int price;friend bool operator < (fruit f2,fruit f2){return f1.price > f2.price;} };

stack 棧:

#include<stack> using namespace std; stack<int> st; push() pop() top() empty() size()

pair 一個內部有兩個元素的結構體:

#include<utility> using namespace std;

algorithm:

**sort(首元素地址,尾元素地址的下一個地址,cmp比較函數):** #include<algorithm> using namespace std; 在STL標準容器中,只有 vector向量、string字符串、deque隊列 是可以使用sort的 **#include <numeric>:** accumulate(a,b,c)累加求和: a為起始地址,b為結束地址,c為初始值 #include <numeric> vector<int> v={1,2,3,4}; int sum = accumulate(v.begin(),v.end(),0);

C++和C:

C++中有string類型;len=str.length()
C語言中沒有單獨一種基本數據類型可以存儲字符串,只能使用字符數組的方式。(字符串常量可以作為初值賦給字符數組,并使用%s的格式輸出);len=strlen(str)
char str[4]=“abcd”;
printf("%s",str);

C++可以直接使用布爾型
C語言中必須添加stdbool.h頭文件才可以使用

C語言中不允許在for語句的表達式A里定義變量;
C++中可以
for(int i=1;i<=100;i++){
sum=sum+i;
}

C++:
引用:對引用變量的操作就是對原變量的操作(引用不是取地址)
void change(int &x){
x=1;
}

C:malloc free
C++:new delete
C++:

頭文件:

#include<stdio.h> #include(C++)
輸入:
scanf("%d",&n);
scanf("%lld",&n); //long long
scanf("%s",str);
scanf("%f",&f); //float
scanf("%lf",&db); //double
輸出:
printf("%d",n);
printf("%lld",n); //long long
printf("%f",fl); //float
printf("%f",db); //double
sscanf(str,"%d",&n):把字符數組str中的內容以"%d"的格式寫到n中
sprintf(str,"%d",n):把n以"%d"的格式寫到str字符數組中

%f是float和double型的輸出格式
轉義字符:\n \t \0
a^b:位異或

scanf("%s",str);
printf("%s",str);
getchar():輸入單個字符,可以識別換行符
putchar():輸出單個字符
gets():輸入一行字符串
puts():輸出一行字符串
注:
scanf輸入時:
%c格式能識別空格跟換行并將其輸入;
%s通過空格或換行來識別一個字符串的結束
gets()識別換行符\n作為輸入結束

注釋:/* */ 或 //

math函數
#include<math.h>
fabs(double x):取絕對值
floor(double x):向下取整
ceil(double x):向上取整
pow(double x,double y):x^y
sqrt(double x):算術平方根
log(double x):以自然對數e為底的對數
round(double x):四舍五入,返回類型也是double型,需進行取整

const double pi=acos(-1.0);

#include<string.h>
memset(a,0,sizeof(a)); //賦值0或-1
strlen(str):長度
strcmp():返回兩個字符串大小的比較結果
strcpy():復制
strcat():連接

生成隨機數據:P144
[a,b]:rand()%(b-a+1)+a
[a,b],b>RAND_MAX:(int)round(1.0rand()/RAND_MAX(b-a)+a)

#include<stdio.h> #include<stdlib.h> #include<time.h> int main(){srand((unsigned)time(NULL));for(int i=0;i<10;i++){printf("%d ",(int)(round(1.0*rand()/RAND_MAX*50+10))); //隨機數[10,60]} return 0; }

switch語句
switch(表達式){
case 常量表達式1:
……
break;
case 常量表達式n:
……
break;
default:
……
}

數組:
一維數組:
int a[10]={5,3,2,6,8,4};
int a[10]={} //都賦初值0
數組作為函數參數時:
參數中數組的第一維不需要填寫長度(如果是二維數組,那么第二維需要填寫長度),實際調用時也只需填寫數組名;
在函數中對數組元素的修改就等同于是對原數組元素的修改(這與普通的局部變量不同)P59

指針:
指針指向內存地址
只要在變量前面加上&,就表示變量的地址
指針變量用來存放指針
數組的名稱作為數組的首地址使用 a==&a[0]
a+i==&a[i] *(a+i)==a[i]
兩個int型的指針相減,等價于在求兩個指針之間相差了幾個int

int a; int* p=&a; //地址&a賦值給p,*p獲得a的值

結構體:

struct studentInfo{int id;char name[20];studentInfo *next; }stu,*p; //訪問變量 stu.id p->id #include<stdio.h> struct Point{int x,y;Point(){} //用以不經初始化地定義pt[10]Point(int _x,int _y):x(_x),y(_y){} //用以提供x和y的初始化 }pt[10];int main(){int num=0;for(int i=1;i<=3;i++){for(int j=1;j<=3;j++){pt[num++]=Point(i,j); //直接使用構造函數}}for(int i=0;i<num;i++){printf("%d,%d\n",pt[i].x,pt[i].y);}return 0; }

代碼實例

簡單:

//PAT B1032 挖掘機技術哪家強 P86 #include<stdio.h> const int maxn=100010; int school[maxn]={0}; int main(){int n,schID,score;scanf("%d",&n);for(int i=0;i<n;i++){scanf("%d %d",&schID,&score);school[schID]+=score;}int k=1,MAX=-1;for(int i=1;i<=n;i++){if(school[i]>MAX){MAX=school[i];k=i;}}printf("%d %d\n",k,MAX);return 0; }

中等:

//冒泡排序 #include<stdio.h> int main(){int a[10]={3,1,4,5,2};for(int i=1;i<=4;i++){ //循環4次for(int j=0;j<5-i;j++){if(a[j]>a[j+1]){int temp=a[j];a[j]=a[j+1];a[j+1]=temp;}}}for(int k=0;k<5;k++){printf("%d ",a[k]);}return 0; } //PAT B1020 月餅 P118 #include<stdio.h> #include<algorithm> using namespace std; struct mooncake{double store; //庫存量double sell; //總售價double price; //單價 }cake[1010]; bool cmp(mooncake a,mooncake b){ //按單價從高到低排序return a.price>b.price; } int main(){int n;double D;scanf("%d%lf",&n,&D);for(int i=0;i<n;i++){scanf("%lf",&cake[i].store);}for(int i=0;i<n;i++){scanf("%lf",&cake[i].sell);cake[i].price=cake[i].sell/cake[i].store; //計算單價}sort(cake,cake+n,cmp); //按單價從高到低排序double ans=0; //收益for(int i=0;i<n;i++){if(cake[i].store<=D){ //如果需求量高于月餅庫存量ans+=cake[i].sell;D-=cake[i].store;}else{ //如果月餅庫存量高于需求量ans+=D*cake[i].price;break;}}printf("%.2f\n",ans);return 0; } //PAT B1019/A1069 數字黑洞 P152 #include<stdio.h> #include<algorithm> using namespace std; bool cmp(int a,int b){return a>b; } void to_array(int n,int num[]){ //將n中每一位存到num數組中for(int i=0;i<4;i++){num[i]=n%10;n=n/10;} } int to_number(int num[]){ //將num數組轉換為數字int sum=0;for(int i=0;i<4;i++){sum=sum*10+num[i];}return sum; }int main(){int n,MIN,MAX; //MIN和MAX分別表示遞增排序和遞減排序后得到的最小值和最大值scanf("%d",&n);int num[5];while(1){to_array(n,num);sort(num,num+4);MIN=to_number(num);sort(num,num+4,cmp);MAX=to_number(num);n=MAX-MIN;printf("%04d-%04d=%04d\n",MAX,MIN,n);if(n==0 || n==6174) break; //退出}return 0; }

復雜:

//日期差值P91 #include<stdio.h> int month[13][2]={ //平年和閏年的每個月的天數{0,0},{31,31},{28,29},{31,31},{30,30},{31,31},{30,30},{31,31},{31,31},{30,30},{31,31},{30,30},{31,31} }; bool isLeap(int year){ //判斷是否是閏年return (year%4==0 && year%100!=0) || (year%400==0); } int main(){int time1,y1,m1,d1;int time2,y2,m2,d2;while(scanf("%d%d",&time1,&time2)!=EOF){if(time1>time2){ //第一個日期晚于第二個日期,則交換int temp=time1;time1=time2;time2=temp;}y1=time1/10000,m1=time1%10000/100,d1=time1%100;y2=time2/10000,m2=time2%10000/100,d2=time2%100;int ans=1; //記錄結果//第一個日期沒有達到第二個日期時進行循環while(y1<y2||m1<m2||d1<d2){d1++;if(d1==month[m1][isLeap(y1)]+1){ //滿當月天數m1++;d1=1;}if(m1==13){ //月份滿12個月y1++;m1=1;}ans++;}printf("%d\n",ans);}return 0; } //PAT B1009 說反話 P97 #include<stdio.h> int main(){int num=0; //單詞的個數char ans[90][90];while(scanf("%s",ans[num])!=EOF){ //一直輸入直到文件末尾num++; //單詞個數加1}for(int i=num-1;i>=0;i--){ //倒著輸出單詞printf("%s",ans[i]);if(i>0) printf(" ");}return 0; }#include<iostream> #include<string> using namespace std; int main(){string str;getline(cin,str,'\n'); // char (*ans)[90]=(char(*)[90])malloc(sizeof(char)*90*90); // cin>>str;int len=str.length(),r=0,h=0; //r為行,h為列char ans[90][90]={}; //ans[0]~ans[r]存放單詞for(int i=0;i<len;i++){if(str[i]!=' '){ans[r][h++]=str[i];}else{ans[r][h]='\0';r++;h=0;}}for(int i=r;i>=0;i--){cout<<ans[i];if(i>0) printf(" ");}return 0; } //PAT A1025 Ranking P103 #include<stdio.h> #include<algorithm> using namespace std;struct Student{char id[15]; //準考證號int score;int location_number; //考場號int local_rank; //考場內排名 }stu[30010];bool cmp(Student a,Student b){if(a.score!=b.score) return a.score>b.score;else return strcmp(a.id,b.id)<0; }int main(){int n,k,num=0; //num為總考生數scanf("%d",&n); //n為考場數for(int i=1;i<=n;i++){scanf("%d",&k); //該考場內人數for(int j=0;j<k;j++){scanf("%s%d",stu[num].id,&stu[num].score);stu[num].location_number=i;num++;}sort(stu+num-k,stu+num,cmp); //將該考場的考生排序stu[num-k].local_rank=1;for(int j=num-k+1;j<num;j++){if(stu[j].score==stu[j-1].score){stu[j].local_rank=stu[j-1].local_rank;}else{stu[j].local_rank=j-num+k+1;}}}printf("%d\n",num); //輸出總考生數sort(stu,stu+num,cmp); //將所有考生排序int r=1;for(int i=0;i<num;i++){if(i>0 && stu[i].score!=stu[i-1].score){r=i+1; //當前考生與上一個考生分數不同時,讓r更新為人數+1}printf("%s %d %d %d\n",stu[i].id,r,stu[i].location_number,stu[i].local_rank);}return 0; } //輸出1~3的全排列 #include<stdio.h> const int maxn=11; //P為當前排列,hashTable記錄整數x是否已經在P中 int n,P[maxn],hashTable[maxn]={false}; //當前處理排列的第index號位 void generateP(int index){if(index==n+1){ //遞歸邊界,已經處理完排列的1~n位for(int i=1;i<=n;i++){printf("%d ",P[i]); //輸出當前排列}printf("\n");return;}for(int x=1;x<=n;x++){ //枚舉1~n,試圖將x填入P[index]if(hashTable[x]==false){ //如果x不在P[0]~P[index-1]中P[index]=x; //令P的第index位為x,即把x加入當前排列hashTable[x]=true; //記x已在P中generateP(index+1); //處理排列的第index+1號位hashTable[x]=false; //已處理完P[index]為x的子問題,還原狀態}} } int main(){n=3; //欲輸出1~3的全排列generateP(1); //從P[1]開始填return 0; } //區間貪心 P122 #include<stdio.h> #include<algorithm> using namespace std; const int maxn=110; struct Inteval{int x,y; //開區間左右端點 }I[maxn]; bool cmp(Inteval a,Inteval b){if(a.x!=b.x) return a.x>b.x; //先按左端點從大到小排序else return a.y<b.y; //左端點相同的按右端點從小到大排序 } int main(){int n;while(scanf("%d",&n),n!=0){for(int i=0;i<n;i++){scanf("%d%d",&I[i].x,&I[i].y);}sort(I,I+n,cmp); //把區間排序int ans=1,lastX=I[0].x;for(int i=1;i<n;i++){if(I[i].y<=lastX){lastX=I[i].x;ans++;}}printf("%d\n",ans);} return 0; } //PAT B1040/A1093 有幾個PAT P147 #include<stdio.h> #include<string.h> const int MAXN=10010; const int MOD=1000000007; char str[MAXN]; int leftNumP[MAXN]={}; //每一位左邊(含)P的個數 int main(){gets(str);int len=strlen(str);for(int i=0;i<len;i++){if(i>0) leftNumP[i]=leftNumP[i-1];if(str[i]=='P') leftNumP[i]++;}int ans=0,rightNumT=0; //ans為答案,rightNumT記錄右邊T的個數for(int i=len-1;i>=0;i--){if(str[i]=='T') rightNumT++;else if(str[i]=='A') ans=(ans+leftNumP[i]*rightNumT)%MOD;}printf("%d\n",ans);return 0; } //PAT A1020 Tree Traversals P296 #include<stdio.h> #include<queue> using namespace std; const int maxn=50; struct node{int data;node* lchild;node* rchild; }; int in[maxn],post[maxn]; //中序、后序 int n; //結點個數//返回構建出的二叉樹的根結點地址 node* create(int postL,int postR,int inL,int inR){if(postL>postR) return NULL;node* root=new node;root->data=post[postR];int k;for(k=inL;k<=inR;k++){if(in[k]==post[postR]) break;}int numLeft=k-inL;root->lchild=create(postL,postL+numLeft-1,inL,k-1);root->rchild=create(postL+numLeft,postR-1,k+1,inR);return root; }int num=0; //已輸出的結點個數 void BFS(node* root){queue<node*> q;q.push(root);while(!q.empty()){node* now=q.front();q.pop();printf("%d",now->data);num++;if(num<n) printf(" ");if(now->lchild != NULL) q.push(now->lchild);if(now->rchild != NULL) q.push(now->rchild);} }int main(){scanf("%d",&n);for(int i=0;i<n;i++){scanf("%d",&post[i]);}for(int i=0;i<n;i++){scanf("%d",&in[i]);}node* root=create(0,n-1,0,n-1); //建樹BFS(root); //層序遍歷return 0; } //PAT A1034 Head of a Gang P354 #include<iostream> #include<map> #include<string> using namespace std; const int maxn=2010; //總人數map<int,string> inToString; //編號->姓名 map<string,int> stringToInt; //姓名->編號 map<string,int> Gang; //head->人數 int G[maxn][maxn]={0}, weight[maxn]={0}; //鄰接矩陣G、點權 weight int n,k,numPerson=0; //邊數n、下限k、總人數numPerson bool vis[maxn]={false}; //標記是否被訪問//DFS函數訪問單個連通塊,nowVisit為當前訪問的編號 //head為頭目,numMember為成員編號,totalValue為連通塊的總邊權 void DFS(int nowVisit,int &head,int &numMember,int &totalValue){numMember++; //成員人數加1vis[nowVisit]=true; //標記nowVisit已訪問if(weight[nowVisit]>weight[head]){head=nowVisit; //更新頭目}for(int i=0;i<numPerson;i++){ //枚舉所有人if(G[nowVisit][i]>0){totalValue+=G[nowVisit][i];G[nowVisit][i]=0;G[i][nowVisit]=0;if(vis[i]==false){DFS(i,head,numMember,totalValue);}}} }//DFSTrave函數遍歷整張圖,獲取每個連通塊的信息 void DFSTrave(){for(int i=0;i<numPerson;i++){if(vis[i]==false){int head=i,numMember=0,totalValue=0; //頭目,成員數,總邊權DFS(i,head,numMember,totalValue);if(numMember>2 && totalValue>k){Gang[inToString[head]] = numMember;}}} }//change 函數返回姓名str對應的編號 int change(string str){if(stringToInt.find(str) != stringToInt.end()) return stringToInt[str];else{stringToInt[str]=numPerson;inToString[numPerson]=str;return numPerson++;} }int main(){int w;string str1,str2;cin >> n >> k;for(int i=0;i<n;i++){cin >> str1 >>str2 >> w;int id1=change(str1);int id2=change(str2);weight[id1]+=w;weight[id2]+=w;G[id1][id2]+=w;G[id2][id1]+=w;}DFSTrave(); //遍歷整個圖的所有連通塊,獲取Gang的信息cout << Gang.size() << endl;map<string,int>::iterator it;for(it=Gang.begin();it!=Gang.end();it++){cout << it->first << " " << it->second << endl;}return 0; } //PAT A1076 Forwards on Weibo #include<stdio.h> #include<string.h> #include<queue> #include<vector> using namespace std; const int maxn=1010; struct Node{int id;int layer; }; vector<Node> Adj[maxn]; //鄰接表 bool inq[maxn]={false}; //頂點是否已被加入過隊列int BFS(int s,int L){ //start為起始結點,L為層數上限int numForward=0; //轉發數queue<Node> q;Node start;start.id=s;start.layer=0;q.push(start);inq[start.id]=true;while(!q.empty()){Node topNode=q.front();q.pop();int u=topNode.id;for(int i=0;i<Adj[u].size();i++){Node next=Adj[u][i];next.layer=topNode.layer+1;if(inq[next.id]==false && next.layer<=L){q.push(next);numForward++;inq[next.id]=true;}}}return numForward; }int main(){Node user;int n,L,numFollow,idFollow;scanf("%d%d",&n,&L); //結點個數,層數上限for(int i=1;i<=n;i++){user.id=i;scanf("%d",&numFollow);for(int j=0;j<numFollow;j++){scanf("%d",&idFollow);Adj[idFollow].push_back(user); //邊idFollow->i}}int numQuery,s;scanf("%d",&numQuery); //查詢個數for(int i=0;i<numQuery;i++){memset(inq,false,sizeof(inq)); //inq數組初始化scanf("%d",&s); //起始結點編號int numForward = BFS(s,L);printf("%d\n",numForward);}return 0; } //PAT A1030 Travel Plan P385 #include<stdio.h> #include<algorithm> #include<string.h> using namespace std; const int maxn=510; const int INF=1000000000;int n,m,st,ed,G[maxn][maxn],cost[maxn][maxn]; int d[maxn],c[maxn],pre[maxn]; bool vis[maxn]={false};void Dijkstra(int s){fill(d,d+maxn,INF);fill(c,c+maxn,INF);for(int i=0;i<n;i++) pre[i]=i;d[s]=0;c[s]=0;for(int i=0;i<n;i++){ //循環n次int u=-1,MIN=INF;for(int j=0;j<n;j++){ //找到未訪問的頂點中d[]最小的if(vis[j]==false && d[j]<MIN){u=j;MIN=d[j];}}//找不到小于INF的d[u],說明剩下的頂點和起點不連通if(u==-1) return;vis[u]=true;for(int v=0;v<n;v++){if(vis[v]==false && G[u][v]!=INF){if(d[u]+G[u][v]<d[v]){d[v]=d[u]+G[u][v];c[v]=c[u]+cost[u][v];pre[v]=u;}else if(d[u]+G[u][v]==d[v]){if(c[u]+cost[u][v]<c[v]){c[v]=c[u]+cost[u][v];pre[v]=u;}}}}} }void DFS(int v){if(v==st){printf("%d ",v); return;}DFS(pre[v]);printf("%d ",v); }int main(){scanf("%d%d%d%d",&n,&m,&st,&ed);int u,v;fill(G[0],G[0]+maxn*maxn,INF);for(int i=0;i<m;i++){scanf("%d%d",&u,&v);scanf("%d%d",&G[u][v],&cost[u][v]);G[v][u]=G[u][v];cost[v][u]=cost[u][v];}Dijkstra(st);DFS(ed);printf("%d %d\n",d[ed],c[ed]);return 0; }

動態規劃

//斐波那契數列 P425 #include<stdio.h> #include<algorithm> using namespace std; const int maxn=1010; int dp[maxn]; int F(int n){if(n==0 || n==1) return 1;if(dp[n]!=-1) return dp[n];else{dp[n]=F(n-1)+F(n-2);return dp[n];}}int main(){fill(dp,dp+maxn,-1);int n;scanf("%d",&n);printf("%d",F(n));return 0; } //數塔問題 P426 #include<stdio.h> #include<algorithm> using namespace std; const int maxn=1010; int dp[maxn][maxn],f[maxn][maxn]; int main(){int n;scanf("%d",&n);for(int i=1;i<=n;i++){for(int j=1;j<=i;j++){scanf("%d",&f[i][j]); //輸入數塔}}//邊界for(int j=1;j<=n;j++){dp[n][j]=f[n][j];}//從第n-1層不斷向上計算出dp[i][j]for(int i=n-1;i>=1;i--){for(int j=1;j<=i;j++){//狀態轉移方程dp[i][j]=max(dp[i+1][j],dp[i+1][j+1])+f[i][j];}}printf("%d",dp[1][1]);return 0; } //最大連續子序列和 P429 #include<stdio.h> #include<algorithm> using namespace std; const int maxn=10010; int dp[maxn],A[maxn]; //A[i]存放序列,dp[i]存放A[i]結尾的連續序列的最大和 int main(){int n;scanf("%d",&n);for(int i=0;i<n;i++){ //讀入序列scanf("%d",&A[i]);}//邊界dp[0]=A[0];for(int i=1;i<n;i++){//狀態轉移方程dp[i]=max(dp[i-1]+A[i],A[i]);}int k=0;for(int i=1;i<n;i++){if(dp[i]>dp[k]){k=i;}}printf("%d\n",dp[k]);return 0; } //A1007 Maximum Subsequence Sum PP387 #include<stdio.h> const int maxn=10010; int dp[maxn],A[maxn]; //A[i]存放序列,dp[i]存放A[i]結尾的連續序列的最大和 int s[maxn]={0}; //s[i]表示產生dp[i]的連續序列從A的哪一個元素開始 int main(){int n;bool flag=false; //false表示數組A中全小于0scanf("%d",&n);for(int i=0;i<n;i++){ //讀入序列scanf("%d",&A[i]);if(A[i]>=0) flag=true;}if(flag==false){printf("0 %d %d",A[0],A[n-1]);return 0;}//邊界dp[0]=A[0];for(int i=1;i<n;i++){//狀態轉移方程if(dp[i-1]+A[i] >= A[i]){dp[i]=dp[i-1]+A[i];s[i]=s[i-1];}else{dp[i]=A[i];s[i]=i;}}int k=0;for(int i=1;i<n;i++){if(dp[i]>dp[k]){k=i;}}printf("%d %d %d\n",dp[k],A[s[k]],A[k]);return 0; } //最長不下降子序列(LIS) P432 #include<stdio.h> #include<algorithm> using namespace std; const int N=100; int A[N],dp[N]; int main(){int n;scanf("%d",&n);for(int i=1;i<=n;i++){scanf("%d",&A[i]);}int ans=-1;for(int i=1;i<=n;i++){dp[i]=1;for(int j=1;j<i;j++){if(A[j]<=A[i] && dp[j]+1>dp[i]){dp[i]=dp[j]+1;}}ans=max(ans,dp[i]);}printf("%d\n",ans);return 0; } //A1045 Favorite Color Stripe PP390 #include<stdio.h> #include<algorithm> using namespace std; const int maxc=210; //最大顏色數 const int maxn=10010; //最大L int HashTable[maxc]; //將喜歡的顏色序列映射為遞增序列,不喜歡的映射為-1 int A[maxn],dp[maxn];int main(){int n,m,x;scanf("%d%d",&n,&m);fill(HashTable,HashTable+maxc,-1);for(int i=0;i<m;i++){scanf("%d",&x);HashTable[x]=i;}int L,num=0;scanf("%d",&L);for(int i=0;i<L;i++){scanf("%d",&x);if(HashTable[x]>=0){A[num++]=HashTable[x];}}int ans=-1;for(int i=0;i<num;i++){dp[i]=1;for(int j=0;j<i;j++){if(A[j]<=A[i] && dp[i]<dp[j]+1){dp[i]=dp[j]+1;}}ans=max(ans,dp[i]);}printf("%d\n",ans);return 0; } //6 //5 2 3 1 5 6 //12 2 2 4 1 5 5 6 3 1 1 5 6 7 //最長公共子序列(LCS) P434 #include<stdio.h> #include<string.h> #include<algorithm> using namespace std; const int N=100; char A[N],B[N]; int dp[N][N];int main(){gets(A+1); //從下標為1開始讀入gets(B+1);int lenA=strlen(A+1);int lenB=strlen(B+1);//邊界for(int i=0;i<=lenA;i++){dp[i][0]=0;}for(int j=0;j<=lenB;j++){dp[0][j]=0;}//狀態轉移方程for(int i=1;i<=lenA;i++){for(int j=1;j<=lenB;j++){if(A[i]==B[j]){dp[i][j]=dp[i-1][j-1]+1;}else{dp[i][j]=max(dp[i-1][j],dp[i][j-1]);}}}printf("%d\n",dp[lenA][lenB]);return 0; } //sadstory //adminisorry 6 //A1045 Favorite Color Stripe PP392 #include<stdio.h> #include<algorithm> using namespace std; const int maxc=210; //最大顏色數 const int maxn=10010; //最大L int A[maxc],B[maxn],dp[maxc][maxn];int main(){int n,m;scanf("%d%d",&n,&m);for(int i=1;i<=m;i++){scanf("%d",&A[i]);}int L;scanf("%d",&L);for(int i=1;i<=L;i++){scanf("%d",&B[i]);}//邊界for(int i=0;i<=m;i++){dp[i][0]=0;}for(int j=0;j<=L;j++){dp[0][j]=0;}//狀態轉移方程for(int i=1;i<=m;i++){for(int j=1;j<=L;j++){int MAX=max(dp[i-1][j],dp[i][j-1]);if(A[i]==B[j]){dp[i][j]=MAX+1;}else{dp[i][j]=MAX;}}}printf("%d\n",dp[m][L]);return 0; } //6 //5 2 3 1 5 6 //12 2 2 4 1 5 5 6 3 1 1 5 6 7 //A1040 Longest Symmetric String(最長回文子串) P394 #include<stdio.h> #include<string.h> const int maxn=1010; char S[maxn]; int dp[maxn][maxn]; int main(){gets(S);int len=strlen(S),ans=1; //ans為最長回文子串的長度memset(dp,0,sizeof(dp));//邊界for(int i=0;i<len;i++){dp[i][i]=1;if(i<len-1){if(S[i]==S[i+1]){dp[i][i+1]=1;ans=2;} }}//狀態轉移方程for(int L=3;L<=len;L++){ //枚舉子串的長度for(int i=0;i+L-1<len;i++){ //枚舉子串的起始端點int j=i+L-1; //子串的右端點if(S[i]==S[j] && dp[i+1][j-1]==1){dp[i][j]=1;ans=L;}}}printf("%d\n",ans);return 0; } //Is PAT&TAP symmetric? 11 //A1068 Find More Coins(背包問題) PP396 #include<stdio.h> #include<algorithm> using namespace std; const int maxn=10010; const int maxv=110; int w[maxn],dp[maxv]; int choice[maxn][maxv]; int flag[maxn]; bool cmp(int a,int b){return a>b; } int main(){int n,m;scanf("%d%d",&n,&m);for(int i=1;i<=n;i++){scanf("%d",&w[i]);}sort(w+1,w+n+1,cmp); //逆序排列//邊界for(int i=0;i<=m;i++){dp[i]=0;}//狀態轉移方程for(int i=1;i<=n;i++){for(int v=m;v>=w[i];v--){if(dp[v]<=dp[v-w[i]]+w[i]){dp[v]=dp[v-w[i]]+w[i];choice[i][v]=1; //放入第i件物品}else{choice[i][v]=0; //不放第i件物品}}}if(dp[m]!=m){printf("No Solution"); //無解}else{//記錄最優路徑int k=n,v=m,num=0;while(k>=0){if(choice[k][v]==1){flag[k]=1;v-=w[k];num++;}else{flag[k]=0;}k--;}//輸出方案for(int i=n;i>=1;i--){if(flag[i]==1){printf("%d",w[i]);num--;if(num>0) printf(" ");}}}return 0; }

總結

以上是生活随笔為你收集整理的C与C++ 算法笔记中的代码的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

色狠狠干 | 人人盈棋牌 | 日韩久久久久久久 | 97视频人人免费看 | 国产99久久九九精品 | 一区三区在线欧 | 国产黄色片一级三级 | 国产精品成人自产拍在线观看 | 久草在线最新免费 | 久精品在线观看 | 日韩欧美一二三 | 国产精品黄 | 日韩久久精品一区二区 | 91av电影网| 国产精选视频 | 久久美女高清视频 | 亚洲精品乱码久久久久久蜜桃不爽 | 国产在线色站 | 九九久久久久久久久激情 | 不卡的av在线播放 | 99久高清在线观看视频99精品热在线观看视频 | 国产男男gay做爰 | 九九热免费在线视频 | 97人人爽人人 | 日本精品视频一区二区 | 99视频国产精品免费观看 | 欧美老人xxxx18 | 女女av在线 | 在线观看一区二区精品 | 伊人婷婷色 | 在线观看免费视频你懂的 | 97在线资源| a级国产乱理伦片在线播放 久久久久国产精品一区 | 一本一本久久a久久精品牛牛影视 | 日韩毛片在线一区二区毛片 | 国产区av在线 | 日韩欧美一区二区三区黑寡妇 | 97在线视 | 丁香五月亚洲综合在线 | 国产精品久久久久婷婷二区次 | 精品一区二区在线免费观看 | 91精品国产91久久久久 | 亚洲国产成人精品在线观看 | 国产最新在线视频 | 四虎影视国产精品免费久久 | 日韩3区 | 一区二区三区在线视频观看58 | 亚洲最新在线 | 成年人免费电影 | 蜜桃传媒一区二区 | 精品亚洲一区二区 | 成人免费精品 | 日韩在线视频免费观看 | 久久电影国产免费久久电影 | 国产精品免费视频久久久 | 久久精品精品电影网 | 最近免费中文视频 | 91精品国产乱码久久桃 | 三级av免费| 99性视频| 99爱视频在线观看 | www.黄色片网站 | 最近中文字幕高清字幕免费mv | 国产一区精品在线观看 | 成人在线小视频 | 日韩免费视频观看 | 男女啪啪免费网站 | 国产一级性生活视频 | 日韩在线观看第一页 | 丁香六月五月婷婷 | 久久一区二区三区国产精品 | 免费黄色网止 | 黄色成人毛片 | 色姑娘综合网 | 久久涩涩网站 | 激情一区二区三区欧美 | 九九在线高清精品视频 | 国产在线观看地址 | 国产精品手机在线观看 | 国产一级片观看 | 久久久网 | 西西444www | 日韩欧美一区二区在线观看 | 久久五月婷婷丁香 | www日日| 久久小视频 | 久久99亚洲网美利坚合众国 | 国产精品一区二区在线播放 | 久久久久久久av | 国产一在线精品一区在线观看 | 国产亚洲视频在线观看 | 日韩美在线 | 国产精品久久久久久久久久妇女 | 久久久毛片 | av资源中文字幕 | 最近最新mv字幕免费观看 | 一区二区三区四区免费视频 | 天天久久夜夜 | 国产成人久久av | 黄色大片免费播放 | 久久国产网 | 色综合久久久久综合体桃花网 | 婷婷色中文 | 91精彩视频在线观看 | 日韩久久网站 | 视频国产区 | 欧美精品免费视频 | 九九久久国产精品 | 国产精品2020 | 日韩精品免费一线在线观看 | 香蕉视频亚洲 | 久久久激情视频 | 精品国产99国产精品 | 97在线观看免费视频 | 91网免费观看 | 九九热在线播放 | 亚洲免费av观看 | 欧美久久久久久久久 | 亚洲欧美视屏 | 精品国产自在精品国产精野外直播 | 一级性av| 欧美一区二区在线看 | www.香蕉视频在线观看 | 西西大胆免费视频 | 久久九九久久精品 | 色丁香久久 | 91禁在线观看 | 国产成人一区二区三区 | 国产原创av在线 | 97色狠狠 | 国产一区二区三区黄 | 亚洲精品一区二区三区高潮 | 日韩在线视频网站 | 国产又粗又猛又黄视频 | 久久综合九色综合97婷婷女人 | 国产爽妇网 | 亚洲精品视频一二三 | 欧美黄色免费 | 亚洲国产精品免费 | 国产精品久久久久久欧美 | 91av社区 | 国产视频一区在线免费观看 | 91九色成人 | 久久伊人91| 欧美日韩国内在线 | 亚洲www天堂com | 久久99久久99精品免观看软件 | 99r在线精品 | ,午夜性刺激免费看视频 | 久热电影 | 亚洲精品国精品久久99热一 | 综合在线观看色 | 免费亚洲黄色 | 日韩在线高清免费视频 | 国产无吗一区二区三区在线欢 | 色婷婷午夜 | 福利精品在线 | 免费网站在线观看成人 | 国内成人精品视频 | 国内久久久久 | 91成人免费观看视频 | 免费在线观看成人 | 亚洲va在线va天堂va偷拍 | 国产精品爽爽久久久久久蜜臀 | 一本一本久久a久久精品综合小说 | 国产麻豆精品95视频 | 久久天天躁狠狠躁亚洲综合公司 | 久久久久99精品成人片三人毛片 | 91日本在线播放 | 午夜手机电影 | 日本黄色免费观看 | 成人h动漫精品一区二 | 日韩高清一区二区 | 中文字幕第一页在线播放 | 嫩草伊人久久精品少妇av | 欧美在一区 | 欧美一级在线 | 91精品入口| 久久国产精品免费观看 | 成人免费视频观看 | 激情丁香5月 | 美国三级黄色大片 | 久久精品精品电影网 | 狠狠久久婷婷 | 五月婷婷久 | 久久免费黄色网址 | 一级免费黄色 | 五月花丁香婷婷 | 日本久久免费电影 | 中文字幕4| 国产精品一区二区久久精品爱涩 | 日韩精品一区二区免费 | 91久久久久久久 | 久久女教师 | 久久久久久黄 | 精品国产1区2区3区 国产欧美精品在线观看 | 91九色视频导航 | 日本精品视频免费 | 91视频在线播放视频 | 亚洲国产理论片 | 国产精品一区二区三区久久 | 久久欧美精品 | 一级全黄毛片 | 最新超碰| 欧美日韩高清一区二区 | 婷婷深爱网 | 成人在线黄色电影 | 久久人人精 | 亚洲不卡av一区二区三区 | 在线观看日韩精品 | 五月开心激情网 | 91免费看黄 | 在线综合色 | 99免费精品视频 | 三级大片网站 | 日韩在线观看一区二区 | 欧亚日韩精品一区二区在线 | 亚洲a在线观看 | www.国产在线 | 在线免费观看国产精品 | 日韩欧美视频免费观看 | 青青河边草免费观看完整版高清 | 亚洲精品免费视频 | 婷婷久久综合九色综合 | 色久网| 九色激情网 | 久久精品免费 | 日本久久电影 | 中文字幕视频三区 | 久久婷五月| 欧美黑人性猛交 | 日日干天天插 | 在线国产一区二区 | 日韩精品在线观看视频 | 在线观看91久久久久久 | 日精品 | 免费看在线看www777 | 久久国产手机看片 | 免费色视频在线 | 免费在线一区二区三区 | 综合久久网 | 中文字幕av免费在线观看 | 九九视频免费在线观看 | 91丨九色丨国产在线观看 | 91在线永久 | 久久99热精品 | 六月丁香综合网 | 久久久久久国产精品999 | 天天色天天操综合 | 丁香六月激情 | 久99久精品视频免费观看 | 99久久精品国产一区二区成人 | 你操综合 | 国产精品 中文在线 | 就要干b | 国产精品精品国产 | 欧美精品乱码久久久久久 | 天天五月天色 | 欧美久久电影 | 精品久久久精品 | 久久综合狠狠综合久久狠狠色综合 | 91视频麻豆 | 久久综合久久综合这里只有精品 | 一本一道波多野毛片中文在线 | 中文字幕一区二区三区四区在线视频 | 超碰免费在线公开 | 日韩av中文字幕在线免费观看 | 碰超人人| 二区视频在线观看 | 国产免费大片 | 国产精品久久网站 | 肉色欧美久久久久久久免费看 | 国产精品a成v人在线播放 | 日韩理论影院 | 激情网婷婷 | 超碰成人av| 欧美福利视频 | 成人免费观看视频大全 | 夜夜摸夜夜爽 | 国产在线观看中文字幕 | 亚洲精品456在线播放第一页 | 99爱精品在线 | 一本一道久久a久久精品 | 久久久久伦理电影 | 免费看片网址 | 久久综合影音 | 久久久男人的天堂 | 色婷婷综合五月 | 亚洲一区日韩精品 | 国产欧美日韩精品一区二区免费 | 日韩成人xxxx | 久久久国产一区二区三区四区小说 | 日韩福利在线观看 | 在线观看av免费 | 久草视频99| 久久久精品视频成人 | 欧美成人黄 | 欧美视频xxx| 在线观看爱爱视频 | 久久久久国产精品免费网站 | 国产又粗又猛又爽又黄的视频先 | 三级a毛片 | www.国产高清| 国产午夜精品一区二区三区在线观看 | 久久黄色美女 | 久久96国产精品久久99漫画 | 国产视频导航 | 国产日韩在线视频 | 狠狠色丁婷婷日日 | 国产精华国产精品 | 国产爽视频 | 日韩欧美电影在线观看 | 欧美最猛性xxx| 美女视频黄的免费的 | 激情在线免费视频 | 亚洲精品自拍视频在线观看 | 天天草天天操 | 免费亚洲成人 | 丝袜+亚洲+另类+欧美+变态 | 国产一区久久久 | 夜夜操天天干 | 国产精品亚洲片在线播放 | 黄色精品视频 | 国产天天综合 | 日韩精品中文字幕久久臀 | 中文字幕第一页在线视频 | 欧美日韩高清国产 | 午夜婷婷在线播放 | 超碰在线日韩 | 免费看网站在线 | 日韩在线国产精品 | 国产精品成人一区二区三区 | 992tv人人网tv亚洲精品 | 亚洲精品午夜aaa久久久 | 亚洲视频一区二区三区在线观看 | 久久久久久久久久久久99 | 精品少妇一区二区三区在线 | 久久狠狠一本精品综合网 | 看av免费| 婷五月激情 | 国产精品18p | 国产一区二区在线观看视频 | 超级av在线| 亚洲天堂网视频 | 国产精品久久久亚洲 | 午夜精品久久久久久久99 | 奇米导航 | 亚州精品成人 | 成人一级免费电影 | 蜜臀av性久久久久蜜臀aⅴ四虎 | 深夜男人影院 | 久久精品国产精品亚洲 | 亚洲乱码国产乱码精品天美传媒 | 欧美一级看片 | 久久精品中文字幕一区二区三区 | 国产福利在线 | 国产精品视频久久 | 99精品视频免费看 | www.天天成人国产电影 | 色在线中文字幕 | 91成人精品一区在线播放69 | 99在线观看 | 久久久久色 | 中文字幕日韩一区二区三区不卡 | 天天干夜夜 | 99中文在线| 精品黄色在线 | 狠狠久久综合 | 国产一级一级国产 | 久久久久国产成人免费精品免费 | 在线黄网站 | 久久久久久看片 | 亚av在线| 99久久99久久免费精品蜜臀 | 看片的网址 | 国产精品一区二区免费看 | 97中文字幕 | 国产视频精品网 | 日韩欧美v| 国内精品久久久久久久影视麻豆 | 久久久久久久久免费视频 | 最新午夜电影 | 免费69视频 | 91成年人网站| 欧美午夜精品久久久久久孕妇 | 午夜精品视频免费在线观看 | 国产麻豆精品在线观看 | 国产99久久精品 | 欧美精品成人在线 | 久草精品在线观看 | 中文字幕 国产视频 | 亚洲国产精品va在线看 | 国产999精品久久久久久 | 国产在线色视频 | 在线视频一二三 | 99视频在线免费看 | 国产区欧美 | 亚洲一二三区精品 | 亚洲美女精品区人人人人 | 国产精品资源 | 丁香婷婷激情国产高清秒播 | 91女子私密保健养生少妇 | 国产不卡在线 | 亚洲精品国偷自产在线99热 | 在线观看国产成人av片 | 国产午夜在线观看视频 | 免费看十八岁美女 | 99视频在线精品免费观看2 | 久久久久久久影视 | 国产成人黄色在线 | 五月天激情视频在线观看 | 国产一区私人高清影院 | 国产一区二区午夜 | 激情婷婷丁香 | 九九免费视频 | 欧美日韩国产综合一区二区 | 免费在线视频一区二区 | 久久男人免费视频 | 成人黄色影片在线 | 国产香蕉久久 | 日本在线观看一区二区 | 久久久久久久久久久久av | 成年人在线免费视频观看 | 美女视频是黄的免费观看 | 综合网伊人 | 亚洲国产天堂av | 五月婷婷激情网 | 在线免费观看av网站 | 天天爱天天操 | 日韩中出在线 | 好看的国产精品视频 | 色播五月激情综合网 | 国产裸体视频网站 | av免费福利 | 免费观看午夜视频 | 精品国产欧美一区二区 | 欧美日韩国产一区二区在线观看 | 欧美极度另类 | 在线色亚洲 | 中文字幕精品视频 | 美女视频网 | 久久精品久久精品久久精品 | av亚洲产国偷v产偷v自拍小说 | 激情久久小说 | 国产亚洲永久域名 | 97视频在线观看网址 | 久久午夜网 | 国产精品ⅴa有声小说 | 五月天激情视频 | 免费三级黄 | 成人97人人超碰人人99 | 亚州av免费 | 久久精品视 | 国内成人精品视频 | 日本在线观看一区二区 | 国产麻豆视频 | 丝袜制服综合网 | 国产精品一区二区三区在线播放 | 中文区中文字幕免费看 | 蜜臀av性久久久久蜜臀aⅴ四虎 | 在线播放av网址 | 狠狠gao | 欧美另类网站 | 国产欧美最新羞羞视频在线观看 | 91资源在线 | 综合亚洲视频 | 国产精品久久久久国产精品日日 | 在线 影视 一区 | 国产亚洲精品久久久久动 | 久99久久 | 色噜噜在线观看 | 国产高清永久免费 | 天天干,夜夜爽 | 9色在线视频 | 久久久91精品国产一区二区三区 | 九九久久婷婷 | 热re99久久精品国产66热 | www.国产在线观看 | 高清免费在线视频 | 在线中文字母电影观看 | 欧美日韩p片 | 成人动漫一区二区三区 | 综合色久| 中文字幕在线观看一区二区三区 | 在线看av网址 | 色噜噜在线观看视频 | 99热在线国产精品 | 久久免费精品一区二区三区 | 91传媒免费在线观看 | 日韩专区av| 亚洲电影久久久 | 日日夜夜国产 | 狠狠躁18三区二区一区ai明星 | 亚洲精品在线电影 | 在线国产专区 | 久久免费成人网 | 中文字幕精品一区二区三区电影 | 国产一区高清在线观看 | 九九九国产 | 天天爱综合 | 在线观看免费一级片 | 亚洲四虎| 国产成人在线观看免费 | 在线观看色视频 | 日韩电影一区二区在线观看 | 97国产在线播放 | 91| 亚洲第一区精品 | 91免费在线视频 | 成人a免费看 | 中文字幕在线免费看 | 日本夜夜草视频网站 | 亚洲视频第一页 | 99精品视频99 | 日韩精品在线视频 | 国产中文在线观看 | 2023国产精品自产拍在线观看 | 四虎在线免费观看视频 | 国产福利a | 久久综合之合合综合久久 | 亚洲国产精品电影在线观看 | 美女在线黄 | av高清在线观看 | av网站手机在线观看 | 国产精品入口66mio女同 | 久视频在线 | 天天操天天操天天操天天操天天操 | 久久久久久毛片精品免费不卡 | 精品女同一区二区三区在线观看 | 国产精品久久久免费 | 最近中文字幕在线中文高清版 | 亚洲精品视频在线 | 911国产精品 | 亚洲最新av在线网站 | 欧美成天堂网地址 | 色五婷婷| 中文字幕在线不卡国产视频 | 久久久久久亚洲精品 | 国产精品久久艹 | 中文字幕区 | 午夜av免费看 | 精品a在线 | 在线免费观看黄色小说 | 亚洲综合欧美激情 | 精品亚洲网| 亚洲黄色av | www.天天射.com | 国产青草视频在线观看 | 国产第一页福利影院 | 性色av免费在线观看 | 免费男女羞羞的视频网站中文字幕 | 久99久在线| jizz欧美性9 国产一区高清在线观看 | 国产精品日韩久久久久 | 丁香花在线视频观看免费 | 精品一区二区三区香蕉蜜桃 | 国产精品私拍 | 国产又粗又猛又黄又爽的视频 | 91欧美国产 | 国产人成一区二区三区影院 | 亚洲精品综合久久 | 婷婷色在线播放 | 亚洲成人软件 | 午夜成人影视 | 久久国产精品99国产精 | 国产精品毛片完整版 | 日本黄色免费在线观看 | 国产美女网站在线观看 | 日韩影视精品 | 视频一区二区国产 | 91精品国产高清自在线观看 | 人人射网站| 五月天色中色 | 亚洲好视频 | 午夜精品成人一区二区三区 | 最近中文字幕 | 欧美性大胆 | 亚洲欧美视频一区二区三区 | 久久精品国产亚洲a | 97超在线| 亚洲不卡在线 | 黄色在线观看污 | 69国产精品视频免费观看 | 欧美日韩国产伦理 | 在线国产小视频 | 成人av高清在线观看 | 91精选 | 成人免费网站在线观看 | 伊人资源视频在线 | 亚洲在线黄色 | 成人av在线网 | 久久手机精品视频 | 亚洲高清视频在线播放 | 精品少妇一区二区三区在线 | 国产伦精品一区二区三区免费 | 国产精品久久久久久久久久三级 | 国产精品密入口果冻 | 午夜性色 | 日韩啪啪小视频 | 免费在线观看午夜视频 | 成人av在线影视 | 久久伦理 | 99久久er热在这里只有精品66 | 久久夜av | 国产精品免费视频一区二区 | 国产精品久久久久久久久费观看 | 五月婷在线观看 | 一区二区影院 | 欧美精品久久久久久久久免 | 中文字幕视频观看 | 免费观看性生交大片3 | 精品亚洲免费 | 欧美a影视| 午夜精品福利一区二区三区蜜桃 | 亚洲欧美日韩一区二区三区在线观看 | 久久超级碰| 成人a级网站 | 亚洲精品看片 | 国产亚洲精品成人av久久影院 | 久久久久久久久久电影 | 欧美国产高清 | 国产国语在线 | 国产午夜精品久久久久久久久久 | 五月激情综合婷婷 | 日韩在线视频精品 | 亚洲精品免费在线播放 | 国产区免费在线 | 激情文学综合丁香 | 国产视频99| 欧美一二在线 | 麻豆视频免费在线观看 | 在线中文字幕电影 | 中文字幕精 | 久久久69| 91视频在线免费下载 | 中文字幕久久精品一区 | 国产97碰免费视频 | 男女啪啪网站 | 99国产高清 | 亚洲一区美女视频在线观看免费 | 国产一区免费观看 | 人人玩人人添人人澡97 | 日韩欧美国产视频 | 狠狠色丁香九九婷婷综合五月 | 天天色天天草天天射 | 99久久婷婷国产 | 国产精品久久久久影院日本 | 国产精品视频最多的网站 | 国产高清在线视频 | 美女视频是黄的免费观看 | 日韩三级在线 | 97视频在线观看播放 | 欧美精品三级在线观看 | 精品国产一区二区三区久久久蜜月 | 伊人六月 | 精品亚洲va在线va天堂资源站 | 久久久久久久久爱 | 国产精品成人av久久 | 久久午夜免费观看 | 天天干 天天摸 天天操 | 日韩大片在线播放 | 欧美视频网址 | 亚洲影院色 | 青春草视频 | 黄av在线| 不卡av电影在线观看 | 婷婷精品国产欧美精品亚洲人人爽 | 国产精品1区2区在线观看 | 综合激情婷婷 | 欧美男同网站 | 又黄又爽的免费高潮视频 | 国产成人久久精品一区二区三区 | 亚洲我射av | av免费观看高清 | 国产96在线视频 | 91精品在线麻豆 | 天天草天天摸 | 成人av网站在线 | 久久不射网站 | 久久精品www人人爽人人 | 亚洲成人av免费 | 国产一二区免费视频 | 五月激情av | 香蕉视频网址 | 日韩精品无 | 狠狠躁夜夜躁人人爽超碰97香蕉 | 99国产免费网址 | aav在线| 欧美a√在线 | 亚洲第一香蕉视频 | 天天综合入口 | 精品福利在线 | www五月天com | 免费看污污视频的网站 | 日韩黄色一级电影 | 91激情视频在线播放 | 日韩视频1| 色妞久久福利网 | 中文字幕在线视频一区 | 99久热在线精品视频观看 | 国产精品久久久久久久久久免费看 | 亚洲天堂网站 | 99九九视频 | 精品嫩模福利一区二区蜜臀 | 97视频中文字幕 | 久草在线费播放视频 | 成年人在线免费视频观看 | 亚洲区另类春色综合小说校园片 | 日韩欧美在线一区二区 | 成人全视频免费观看在线看 | 国产手机视频在线 | 国产69精品久久app免费版 | 黄色软件视频网站 | 婷婷综合影院 | 成年人视频免费在线 | 国产成人av免费在线观看 | av丝袜在线 | 免费日韩一区二区三区 | 伊人天天干| 欧美一区二区精美视频 | 五月色婷| 亚洲综合在 | 国产成人黄色av | www.亚洲视频| 成人av电影免费在线观看 | 中文字幕在线看视频国产中文版 | 久久女同性恋中文字幕 | 国产亚洲aⅴaaaaaa毛片 | 男女激情网址 | 久久久免费精品视频 | 综合视频在线 | 亚洲撸撸 | 精品国产诱惑 | 欧洲激情在线 | 国产精品久久久久久久久久久免费 | 黄色毛片视频免费观看中文 | 五月在线 | 一本一本久久a久久精品综合 | 在线观看一区 | 久久男人中文字幕资源站 | 欧美天堂影院 | 国产毛片久久 | 国产理论在线 | 欧美色图视频一区 | 亚洲成人软件 | 91网页版免费观看 | 成人午夜av电影 | 欧美在线视频第一页 | 日韩动漫免费观看高清完整版在线观看 | 亚洲三级av | 亚洲永久精品在线观看 | 99精品视频在线观看播放 | 99在线热播精品免费 | 丁香综合五月 | 在线视频黄| 午夜精品久久久久久久久久久久久久 | 伊人伊成久久人综合网小说 | 免费观看全黄做爰大片国产 | 国产精品白浆 | 国偷自产中文字幕亚洲手机在线 | 麻豆观看 | 成人一区电影 | 日韩欧美综合在线视频 | 成人免费xxxxxx视频 | 中文成人字幕 | 成人av一区二区兰花在线播放 | 免费高清看电视网站 | 免费视频久久久久 | 在线国产激情视频 | 久久99精品久久久久久秒播蜜臀 | 久久人人爽人人片 | 久草视频一区 | 91大神电影 | 中文字幕二区在线观看 | 成人看片 | www色,com| 91精品视频在线免费观看 | 亚洲欧美综合精品久久成人 | 精品女同一区二区三区在线观看 | 日韩一区二区三区在线观看 | 久久国产精品二国产精品中国洋人 | 国产午夜一区二区 | 麻豆视频一区二区 | 9999精品| 欧美一级高清片 | 国产色就色 | 99re在线视频观看 | 青草视频在线免费 | 国产高清av免费在线观看 | 九九免费精品视频在线观看 | 久久国产欧美日韩 | 久久免费视频观看 | 又湿又紧又大又爽a视频国产 | 国产精品亚洲人在线观看 | 香蕉网在线 | 在线观看视频中文字幕 | 麻豆一精品传二传媒短视频 | 日韩三区在线 | 91在线免费播放视频 | 国产手机免费视频 | 在线黄色观看 | av一级片在线观看 | 久久精品九色 | 欧美激情视频免费看 | 久久国产成人午夜av影院宅 | 中文字幕观看av | 青草视频在线 | 国产精品一区二区麻豆 | 最近日本中文字幕 | 国产少妇在线观看 | 久草在线免费看视频 | 久久av福利| 97超级碰碰碰视频在线观看 | 日日夜夜操av | 国产精品免费久久久久影院仙踪林 | 国产亚洲精品久久久久动 | 欧美视频日韩 | 蜜桃视频日本 | 色吊丝av中文字幕 | 韩国中文三级 | 91看毛片 | 久久久久久久久久久久国产精品 | 久久精品视频4 | 青青久视频 | 日韩欧美国产激情在线播放 | 激情视频二区 | 国产精品入口传媒 | 在线观看国产麻豆 | 特级黄色一级 | 人人爽久久久噜噜噜电影 | 狠狠干夜夜操天天爽 | 日韩高清不卡在线 | 成人黄色在线电影 | 国产99久久久国产精品成人免费 | 久久999久久 | 成人a级黄色片 | 久久超级碰视频 | a√天堂中文在线 | 黄色日视频 | a天堂最新版中文在线地址 久久99久久精品国产 | 成人黄色电影免费观看 | 亚洲视频精选 | 亚洲va综合va国产va中文 | 在线视频一二区 | 最近中文字幕视频完整版 | 成人精品国产 | 久久,天天综合 | 99日韩精品 | 国精产品永久999 | 国产区久久 | 五月婷婷六月丁香 | 在线观看国产亚洲 | 亚洲精品小区久久久久久 | 永久av免费在线观看 | 97超碰人人看 | 亚洲一级黄色av | 国产视频第二页 | 国产电影黄色av | 97福利在线| 狠狠色狠狠色终合网 | 天天干天天操天天入 | 色综合久久精品 | av丝袜在线| 国产精品丝袜在线 | 日韩av一区二区三区四区 | 精品国产伦一区二区三区观看说明 | 深爱婷婷 | 亚洲欧美日韩国产一区二区 | 悠悠av资源片 | 欧美日韩国产xxx | 色www免费视频 | 麻豆高清免费国产一区 | 亚洲综合小说电影qvod | 国产成人精品在线 | 久久久久亚洲精品男人的天堂 | 日日操日日 | 日韩欧在线 | 美州a亚洲一视本频v色道 | 欧美日韩国产网站 | 人人添人人澡人人澡人人人爽 | 中文在线免费看视频 | 成人免费大片黄在线播放 | 91精品资源 | 国产成人精品一区在线 | 日韩亚洲国产精品 | 国产99久久九九精品 | 日日操网 | 色综合天天综合网国产成人网 | 国产一卡久久电影永久 | 免费黄色av电影 | 天堂在线一区二区三区 | 成人久久久电影 | 天天鲁一鲁摸一摸爽一爽 | 中文字幕一区在线观看视频 | 色综合天天狠天天透天天伊人 | 成人动漫一区二区 | 久久精品免费播放 | 欧美男女爱爱视频 | 天天操天天操天天操天天操天天操 | 在线观看韩国av | 狠狠色噜噜狠狠 | 五月婷婷久 | 国产精品1区2区 | 91精品视屏 | 人人狠狠综合久久亚洲婷 | 亚洲欧美成人 | 五月婷婷中文网 | 精品在线一区二区 | 亚洲黄色片一级 | 成人在线视频论坛 | 手机在线日韩视频 | 国产中文在线视频 | 久久久久久麻豆 | 欧美一级高清片 | 九色最新网址 | 人人网av| 日韩福利在线观看 | 西西www4444大胆在线 | 成年人免费在线观看网站 | 国产在线理论片 | 国产一级片免费观看 | 人人爽人人射 | 日本丶国产丶欧美色综合 | 亚洲精品国产精品国自产观看浪潮 | 久久成人午夜视频 | 日韩中文字幕国产精品 | www.福利视频 | 久久爽久久爽久久av东京爽 | 国产午夜精品一区二区三区欧美 | 激情视频一区二区三区 | 三级午夜片 | 91中文字幕网 | 成人av网站在线播放 | 日韩超碰 | 国产精品va在线观看入 | 五月婷婷综合在线 | 欧美一级艳片视频免费观看 | 午夜视频在线观看一区 | 一区二区国产精品 | 国产视频在线观看一区 | 日本超碰在线 | 在线观看精品视频 | 欧美日韩大片在线观看 | 亚洲综合精品在线 | 国产一级电影 | 免费日韩 精品中文字幕视频在线 | 久久综合五月 | 久久久伦理 | 免费看wwwwwwwwwww的视频 久久久久久99精品 91中文字幕视频 | 在线欧美最极品的av | 日本老少交 | 日韩免费网址 | 日批视频在线 | 国产一级在线观看 | 久久久久久久久久久久久久av | 天天色天天操天天爽 | 丁香网婷婷 | 久久黄色影院 | 在线小视频你懂的 | 国产视频一区二区三区在线 | 日韩欧美综合 | 在线小视频你懂的 | 久热香蕉视频 | 亚洲国产一区二区精品专区 | 久久精品视频免费 | 在线视频一二区 | 人人插人人射 | 999成人 | 麻豆一区在线观看 | 一区二区三区在线观看免费 | 蜜臀91丨九色丨蝌蚪老版 | 欧美日韩国产免费视频 | 日本三级香港三级人妇99 | 欧美日韩不卡在线视频 | 亚洲高清av在线 | 色姑娘综合网 | 国产免码va在线观看免费 | 91在线看片| 国产午夜一区二区 | 天堂av免费观看 | 久久久久免费网 | 久章草在线| 中文字幕xxxx | 中文字幕高清视频 | 色5月婷婷 | 蜜臀av性久久久久av蜜臀妖精 | 丁香婷婷深情五月亚洲 | 久久成人国产精品免费软件 | 九九综合在线 | 欧美日韩国产mv | 色综合久久综合网 | 欧美日韩视频免费看 | 蜜臀一区二区三区精品免费视频 | 国产精品毛片久久久久久 | av高清免费在线 | 久草网站在线观看 | av电影中文字幕在线观看 | 91av视频播放 |