NOIP2011 提高組Day 1題解

2021-08-21 07:04:29 字數 3182 閱讀 3003

總結:第一天的三道題除了第三題**長度有點超過我的接受範圍之外,一二題難度還是比較適中滴,只可惜第二題我打的暴力忘了小小的優化一下,結果沒得全分,有點難過了。

這道題的思路就是輸入過後倒著尋找符合條件的地毯,因為越後放的地毯在越上面

這道題我們先列舉第二個客棧的位置,然後去倒推第乙個客棧的位置。當時做這道題的時候我好像是列舉的第乙個客棧的位置,然後再去列舉第二個客棧,就只有60分,不過我想如果列舉第乙個客棧能稍微優化一下應該也是能勉強卡過的

這道題**比較長,還是比較好想的

#include

#include

#include

using

namespace

std;

int n;

int a[10][10], tmp, jie1[10], jie2[10], jie3[10];

void check()

}bool func()

; bool flag = false;

for(int i = 1; i <= 5; i++)

k = j+1;

for( ; k <= 7; k++)

if(a[i][j] != a[i][k]) break;

if(k-j >= 3)}}

for(int i = 1; i <= 5; i++)

for(int j = 1; j <= 7; j++)

if(s[i][j])

a[i][j] = 0;

if(!flag) return

false;

for(int i = 1; i <= 5; i++)

for(int j = 1; j <= 7; j++)

if(a[i][j] == 0)

return

true;

}void dfs(int x)

}int temp_2 = a[i][j];

a[i][j] = a[i+1][j];

a[i+1][j] = temp_2;

jie1[x] = i;

jie2[x] = j;

jie3[x] = 1;

while(func()) ;

if(x == n) check();

else dfs(x+1);

for(int k = 0; k <= 9; k++)}}

if(i!=5 && !a[i+1][j])

}int m;

for(m = j-1; m >= 1; m--)

if(a[i+1][m]) break;

m++;

a[i+1][m] = a[i][j];

a[i][j] = 0;

jie1[x] = i;

jie2[x] = j;

jie3[x] = 1;

for(int p = j; p <= 6; p++)

while(func()) ;

if(x == n) check();

else dfs(x+1);

for(int k = 0; k <= 9; k++)}}

if(i!=1 && !a[i-1][j])

}int m;

for(m = j-1; m >= 1; m--)

if(a[i-1][m]) break;

m++;

a[i-1][m] = a[i][j];

a[i][j] = 0;

jie1[x] = i;

jie2[x] = j;

jie3[x] = -1;

for(int p = j; p <= 6; p++)

while(func()) ;

if(x == n) check();

else dfs(x+1);

for(int k = 0; k <= 9; k++)}}

}}}int main()

}dfs(1);

printf("-1");

return

0;}

NOIP2011提高組DAY1題解

考察知識 模擬,列舉 演算法難度 x 實現難度 x 分析 直接讀入資料然後判斷就可以了,真的沒有難度 includeconst int maxn 10005 int n,a maxn b maxn g maxn k maxn x,y int main printf d n ans return 0 ...

noip2011提高組day1第1題 c 實現

為了準備乙個獨特的頒獎典禮,組織者在會場的一片矩形區域 可看做是平面直角座標系的第一象限 鋪上一些矩形地毯。一共有 nn 張地毯,編號從 11 到nn。現在將這些地毯按照編號從小到大的順序平行於座標軸先後鋪設,後鋪的地毯覆蓋在前面已經鋪好的地毯之上。地毯鋪設完成後,組織者想知道覆蓋地面某個點的最上面...

noip2011提高組 計算係數

這個題第一眼 楊輝三角。其實還有個高大上的名字 叫。二項式定理 我才高一qaq 後面這個名字不知道啊 不過知道楊輝三角也夠了 1 1a 0 b 0 1 1 1a 1b 1 2 1 1a 2 2ab 1b 2 1 3 3 1 只不過這道題多了乙個x與y項的係數 無所謂 用整體思想 將ax看成u by看...