第十一屆浙財資訊管理與工程學院程式設計競賽題解

2021-08-13 10:28:14 字數 4244 閱讀 5173

a. 祝大家院賽取得好成績

#include

using

namespace

std;

int main()

return

0;}

b. 算一算幾何放鬆一下
#include

using

namespace

std;

int main()

return

0;}

c. 有趣的問題
#include

using

namespace

std;

int main()

return

0;}

d. 花紋矩陣
#include

using

namespace

std;

int main()

else

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

cout

<< endl;}}

return

0;}

e. 聽說過各種各樣的進製嗎
#include

using

namespace

std;

int a[505];

int main()

}cout

<< sum << endl;

}return

0;}

f. 特殊的三角關係
#include

#include

using

namespace

std;

int f[505];

int a[505];

void get_f()

f[i] = flag;

}}int main()

int ans = 0;

for (int i = 1; i <= n; i++)}}

}}

cout

<< ans << endl;

}return

0;}

g. 聽說這種字串很有趣
#include

#include

using

namespace

std;

char a[105];

int main()

}if (flag)

}if (note) cout

<< "yes"

<< endl;

else

cout

<< "no"

<< endl;

}return

0;}

h. 身高和體重
#include

#include

#include

using

namespace

std;

const

int maxn = 1e3 + 10;

struct node a[maxn];

int cmp(node a, node b)

int t;

int n, k;

int main()

sort(a + 1, a + 1 + n, cmp);

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

for (int i = n - k + 1; i <= n; i++)

cout

<< max(abs(sum1), abs(sum2)) << endl;

}return

0;}

i. 序列變換
#include

#include

#include

using

namespace

std;

#define ll long long int

const

int maxn = 1e3 + 10;

int t;

int n;

int a[maxn], b[maxn];

int main()

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

if (flag)

ll ans = b[1];

for (int i = 2; i <= n; i++)

cout

<< ans << endl;

}return

0;}

j. jelly捉賊
#include

#include

using

namespace

std;

int t, n, m, k, x, y;

int main()

else

if (s2 / k >= s)

if (i % 2 == 1 && q == m || i % 2 == 0 && q == 1)

p++;

else

if (i % 2 == 0)

else

if (i % 2 == 1) }}

if (flag)

else

cout

<< s << endl;}}

return

0;}

k. jelly和狗頭人的地下世界
#include

#include

#include

using

namespace

std;

int a[55][55];

int dp[55][55][4321];

#define mod 19260817

int main()

}int ans = 0;

dp[1][1][a[1][1]] = 1;

ans += dp[1][1][k];

int now = a[1][1];

for (int i = 2; i <= n; i++)

now = a[1][1];

for (int j = 2; j <= m; j++)

for (int i = 2; i <= n; i++)

ans += (dp[i][j][k] % mod);

ans = (ans + mod) % mod;}}

ans = (ans + mod) % mod;

cout

<< ans << endl;

}return

0;}

l. 雙月同天
#include

#include

using namespace std

;const double eps = 1e-8

;const double pi = acos(-1.0);

double r1, r2, s, ca, cb, cc, cd, sa, sb, sc, sd, tmp, l, r, stmp;

int main()

cout << (int)(l) << endl;

}return 0

;}

m. 圖樣圖森破
#include

#include

using

namespace

std;

const

int maxn = 2e5 + 10;

int c[maxn];

int vis[maxn];

int u[maxn], ft[maxn], nt[maxn], cost[maxn];

int id[maxn], eid[maxn], id[maxn];

int n, m;

int lowbit(int x)

void add(int i, int x)

}int sum(int x)

return sum;

}void dfs(int x, int num)}}

for (int i = ft[x]; ~i; i = nt[i])

}}int main()

dfs(1, 1);

int q; int flag;

cin >> q;

while (q--)

else}}

return

0;}

第十一屆藍橋杯

問題描述 小藍要為一條街的住戶製作門牌號。這條街一共有 2020 位住戶,門牌號從 1 到 2020 編號。小藍製作門牌的方法是先製作 0 到 9 這幾個數字字元,最後根據需要將字 符貼上到門牌上,例如門牌 1017 需要依次貼上字元 1 0 1 7,即需要 1 個 字元 0,2 個字元 1,1 個...

第十一屆藍橋杯 矩陣

問題描述 把 1 2020 放在 2 1010 的矩陣裡。要求同一行中右邊的比左邊大,同一列中下邊的比上邊的大。一共有多少種方案?答案很大,你只需要給出方案數除以 2020 的餘數即可。答案提交 這是一道結果填空題,你只需要算出結果後提交即可。本題的結果為乙個整數,在提交答案時只填寫這個整數,填寫多...

第十一屆藍橋杯 走方格

問題描述 在平面上有一些二維的點陣。這些點的編號就像二維陣列的編號一樣。從上到下依次為第 1 至第 n 行,從左到右依次為第 1 至第 m 列,每乙個點可以用行號和列號來表示。現在有個人站在第 1 行第 1 列,要走到第 n 行第 m 列。只能向右或者向下走。注意,如果行號和列號都是偶數,不能走入這...