青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

JulyRina's blog
welcome to July Rina's blog
posts - 22,comments - 1,trackbacks - 0
【練習】
2.3-2 MERGE的改進
void MERGE(int *A, int p,int q, int r) {
    int B[maxn] , i = p , j = q+1 , k = 0;
    while(k < r - p + 1) {
        if(i > q || j <= r && A[i] > A[j]) B[k++] = A[j++];
        else B[k++] = A[i++];
    }
    for(i=0;i<r-p+1;i++) A[p+i] = B[i];
}

2.3-5 二分查找的C++代碼
int find(int *a, int l, int r, int value) {
    if(l == r) return l;
    int mid = (l+r) >> 1;
    if(a[mid] >= value) return find(a, l, mid, value);
    else return find(a , mid+1, r , value);
}

*2.3-7 (這道題其實有O(n)的算法,而且寫起來更方便些)這里是O(nlogn)的算法
O(nlogn)算法思想:1.首先進行排序;2.然后枚舉每一個小于等于x/2的數S[i],二分查找對應的x-S[i]是否存在
#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
using namespace std;
const int maxn = 1010;
bool findx(int *S,int n, int x,int l,int r) {
    if(l > r) return false;
    if(l ==r) return S[l] == x;
    int mid = (l+r) >> 1;
    if(S[mid] >= x) return findx(S, n, x, l, mid);
    else return findx(S, n, x, mid+1, r);
}
bool check(int *S,int n,int x) {
    for(int i=0;S[i]<=x/2 && i < n;i++) {
        if(findx(S, n, x-S[i], i+1, n-1)) return true;
    }
    return false;
}
int main() {
    int S[1010] , x , n;
    while(~scanf("%d%d" , &n , &x)) {
        for(int i=0;i<n;i++) cin >> S[i];
        if(check(S, n, x)) puts("yes");
        else puts("no");
    }
    return 0;
}

O(n)的方法是在數的范圍不是特別大的時候(或者數的范圍比較大,此時采用hash的方法)標記的方法,這里假設數的范圍<=10000,并且假設數沒有重復的情況下,其他情況稍許改變一下就行:
#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
using namespace std;
const int maxn = 1010;

bool check(int *S,int n,int x) {
    bool vis[10001] = {0};
    for(int i=0;i<n;i++) vis[x-S[i]] = true;
    for(int i=0;i<n;i++) if(vis[S[i]]) return true;
    return false;
}
int n ,x , S[maxn];
int main() {
    while(~scanf("%d%d" , &n , &x)) {
        for(int i=0;i<n;i++) cin >> S[i];
        if(check(S, n, x)) puts("yes");
        else puts("no");
    }
    return 0;
}

2-4(逆序對):這道題就是在歸并排序中得到逆序對,具體見代碼:
#include <cstdio>
#include <cstring>
#include <iostream>
#include <algorithm>
using namespace std;
const int maxn = 1010;
int ans;
void merge_sort(int *A, int l,int r) {
    if(l >= r) return;
    int mid = (l+r) >> 1;
    merge_sort(A, l, mid);
    merge_sort(A, mid+1, r);
    int i = l , j = mid+1 ,B[maxn] , k = l;
    while(i <= mid || j <= r) {
        if(i > mid || j <= r && A[j] < A[i]) B[k++] = A[j++] , ans += mid-i+1;
        else B[k++] = A[i++];
    }
    for(i=l;i<=r;i++) A[i] = B[i];
}
int main() {
    int A[maxn] , n;
    while(~scanf("%d" , &n)) {
        for(int i=0;i<n;i++) cin >> A[i];
        ans = 0;
        merge_sort(A, 0, n-1);
        cout << ans << endl;
        //for(int i=0;i<n;i++) cout << A[i] << " "; cout << endl;
    }
    return 0;
}
posted on 2015-03-07 15:19 JulyRina 閱讀(323) 評論(0)  編輯 收藏 引用 所屬分類: 算法專題
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            久久精品在线视频| 亚洲人成网站精品片在线观看 | 99成人在线| 在线播放中文一区| 尤物在线观看一区| 亚洲国产精品视频一区| 伊人色综合久久天天| 亚洲高清一区二| 亚洲大胆人体视频| 亚洲精品免费看| 夜夜嗨av一区二区三区中文字幕| 亚洲免费播放| 午夜国产精品影院在线观看| 午夜精品久久久久影视| 久久国产精品久久久| 久久精品人人爽| 欧美h视频在线| 日韩视频免费在线观看| 亚洲伊人久久综合| 久久综合久久久久88| 欧美激情国产日韩| 国产精品久久久一区麻豆最新章节 | 国产一区91| 亚洲国产精品激情在线观看| 一区二区不卡在线视频 午夜欧美不卡'| 一区二区三区视频在线观看| 久久成人精品无人区| 亚洲经典在线| 一本久道久久综合中文字幕| 久久精品国产亚洲aⅴ| 欧美日韩亚洲综合| 亚洲成人在线视频网站| 亚洲自拍另类| 亚洲欧洲视频在线| 久久免费视频这里只有精品| 国产精品高潮呻吟久久| 亚洲激情小视频| 久久伊人精品天天| 一区二区三区四区国产| 香蕉精品999视频一区二区| 欧美电影免费网站| 亚洲欧美自拍偷拍| 欧美色欧美亚洲高清在线视频| 精品电影一区| 欧美在线一级视频| 亚洲一级一区| 欧美视频在线观看一区二区| 亚洲激情女人| 欧美高清hd18日本| 久久久亚洲高清| 国产亚洲精品久久久久久| 亚洲尤物在线视频观看| 欧美成人国产一区二区| 久久久久久久999| 国内精品久久久久影院 日本资源 国内精品久久久久伊人av | 亚洲一区二区三区激情| 欧美freesex交免费视频| 久久爱91午夜羞羞| 国产一区美女| 免费观看亚洲视频大全| 久久成人一区| 在线观看日韩一区| 欧美激情一区二区三区蜜桃视频 | 一区二区三区高清在线观看| 欧美精品在线网站| 一区二区三区.www| 99re66热这里只有精品3直播| 欧美成人国产va精品日本一级| 国内精品久久久久伊人av| 久久9热精品视频| 欧美综合77777色婷婷| 久色婷婷小香蕉久久| 亚洲欧美久久久| 国内自拍视频一区二区三区 | 亚洲国产精品成人综合| 国产精品一区三区| 一区二区三区精密机械公司| 亚洲美女福利视频网站| 欧美成年人视频网站欧美| 久久精选视频| 最新国产拍偷乱拍精品| 亚洲电影欧美电影有声小说| 欧美日本国产精品| 亚洲女性裸体视频| 国产亚洲人成网站在线观看| 老司机aⅴ在线精品导航| 玖玖在线精品| 中文一区二区在线观看| 亚洲在线一区二区| 欧美a级片一区| 亚洲三级电影全部在线观看高清| 欧美不卡在线视频| 亚洲精选在线| 一区二区久久久久久| 久久综合999| 欧美黄色免费| 久久av一区二区三区漫画| 久久精品夜色噜噜亚洲aⅴ| 亚洲电影免费观看高清完整版在线观看 | 夜夜精品视频一区二区| 国产精品亚洲美女av网站| 牛牛影视久久网| 欧美日韩精品不卡| 午夜精品久久久久久久蜜桃app | 亚洲欧美清纯在线制服| 欧美在线观看日本一区| 久久精品亚洲国产奇米99| 一区二区三区四区蜜桃| 午夜日韩av| 中文在线不卡视频| 久久久噜噜噜久久人人看| 亚洲欧美日韩精品久久| 欧美91视频| 久久久亚洲成人| 国产精品久久毛片a| 亚洲精品国产精品乱码不99按摩| 国产一区二区三区四区hd| 在线中文字幕不卡| aa级大片欧美| 欧美激情一区二区三区在线视频 | 在线综合亚洲| 日韩一区二区高清| 久久久久久国产精品mv| 性视频1819p久久| 欧美日韩精品免费观看视频完整 | 性欧美18~19sex高清播放| 一区二区三区久久网| 免费成人av资源网| 免费影视亚洲| 精品动漫3d一区二区三区免费| 欧美一区二区网站| 久久精品123| 国产女主播一区| 午夜在线a亚洲v天堂网2018| 亚洲欧美日韩综合国产aⅴ| 欧美日韩网站| 一二三四社区欧美黄| 一区二区三区你懂的| 欧美极品在线观看| 久久免费视频网| 欧美国产1区2区| 欧美精品色网| 男人天堂欧美日韩| 狠狠色噜噜狠狠狠狠色吗综合| 亚洲欧美国产视频| 欧美一区二区三区视频免费| 欧美午夜一区| 性欧美xxxx大乳国产app| 久久精品中文字幕一区| 国内精品模特av私拍在线观看| 午夜精品福利一区二区蜜股av| 亚洲婷婷国产精品电影人久久| 欧美激情麻豆| 亚洲欧洲日本mm| 99精品国产99久久久久久福利| 麻豆亚洲精品| 亚洲精品一区在线| 欧美在线|欧美| 国产亚洲亚洲| 一本一本久久a久久精品综合麻豆 一本一本久久a久久精品牛牛影视 | 野花国产精品入口| 欧美亚洲系列| 激情成人在线视频| 欧美在线播放高清精品| 免费短视频成人日韩| 国产精品99久久99久久久二8 | 销魂美女一区二区三区视频在线| 欧美一区二区观看视频| 国产精品综合不卡av| 久久久久成人精品免费播放动漫| 欧美大片免费观看在线观看网站推荐| 亚洲日韩成人| 欧美日韩在线免费视频| 久久不射网站| 中文国产成人精品久久一| 久久久青草婷婷精品综合日韩 | 久久激情综合网| 亚洲第一网站| 国产精品福利影院| 久久久久国内| 99精品热6080yy久久| 美女任你摸久久| 中文在线资源观看视频网站免费不卡| 国内欧美视频一区二区| 欧美色欧美亚洲另类二区| 久久精品麻豆| 亚洲无吗在线| 亚洲欧洲一级| 六月婷婷一区| 欧美一区二区三区婷婷月色| 日韩网站在线| 在线精品在线| 国产一区二区看久久| 国产精品v欧美精品v日本精品动漫| 亚洲影视中文字幕| aa级大片欧美三级| 91久久精品久久国产性色也91 | 久久精品伊人| 亚洲男人的天堂在线观看| 亚洲高清在线观看一区|