<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      上海計算機學會11月月賽

      上海計算機學會11月月賽

      奇偶數的判定

      題目描述

      給定一個整數 n,若 n 是一個偶數,輸出 even,若 n 是一個奇數,輸出 odd。

      輸入格式

      單個整數:表示 n。

      輸出格式

      單個字符串:表示 n 的奇偶性

      數據范圍

      \(-1,000,000\leq n\leq 1,000,000\)

      樣例數據

      輸入:

      0
      

      輸出:

      even
      

      輸入:

      -1
      

      輸出:

      odd
      

      解題思路

      直接取模即可。注意最好模2,因為負數的余數是負數,正數的余數是正數,0既不是正數也不是負數。

      搭積木

      題目描述

      小愛同學想要用積木搭起一個金字塔。為了結構穩定,金字塔的每一層要比上一層多一塊積木。即搭建規則如下:

      金字塔的第 1 層需要放 1 塊積木
      
      金字塔的第 2 層需要放 2 塊積木
      
      金字塔的第 3 層需要放 3 塊積木
      
      …
      
      金字塔的第 i 層需要放 i 塊積木
      

      現在小愛拿到了 n 塊積木,請問他最高可以搭出多少層的金字塔?

      輸入格式

      輸入一個正整數 n,表示小愛手中的積木數量

      輸出格式

      輸出一個正整數,表示小愛最高能搭的金字塔層數

      數據范圍

      對于 \(50\%\) 的數據,\(1 \leq n \leq 1,000\)
      對于 \(100\%\) 的數據,\(1 \leq n \leq 1,000,000,000\)

      樣例數據

      輸入:

      12
      

      輸出:

      4
      

      說明:
      4層金字塔需要1+2+3+4=10塊積木,而5層金字塔需要1+2+3+4+5=15塊積木,所以小愛在有12塊積木的情況下,最多搭4層金字塔

      解題

      循環求解即可

      #include <bits/stdc++.h>
      #define int long long
      using namespace std;
      
      signed main()
      {
          int n;
          cin >> n;
          int sum = 0;
          int i = 0;
          while(sum < n)
          {
              i ++;
              sum += i;
          }
          cout << i - 1 << endl;
          return 0;
      }
      

      積木染色

      題目描述

      有 n 塊積木排成一排,小愛需要給每塊積木染色,顏色有 m 種,請問有多少種方法,能使相鄰兩塊積木的顏色均不相同?

      輸入格式

      輸入兩個正整數n,m

      輸出格式

      輸出滿足條件的方案數模\(10^9+7\)的結果

      數據范圍

      對于 30% 的數據,\(1≤n,m≤10\)
      對于 60% 的數據,\(1≤n,m≤10 ^4\)

      對于 \(100\%\) 的數據,\(1 \leq n \leq 10^{15},1 \leq m \leq 10^9\)

      樣例數據

      輸入:

      3 2

      輸出:

      2

      說明:

      合法的染色方案有:{1,2,1} {2,1,2}

      #include <bits/stdc++.h>
      using namespace std;
      
      int main()
      {
          int n;
          cin >> n;
          if(n == 0)
          {
              cout << "even"<< endl;
              return 0;
          }
          if(n % 2 == 0)
              cout << "even" << endl;
          else cout << "odd" << endl;
          return 0;
      }
      

      解題思路

      排列組合題。主要是套快速冪模板.

      //liziyu
      
      #include <bits/stdc++.h>
      #define int long long
      using namespace std;
      
      const int MOD = 1e9 + 7;
      
      int f(int a , int m , int mod)
      {
      	if(m == 0)
      		return 1;
      	int t = f(a , (m - 1) / 2 , mod) % mod;
      	if(m % 2 == 0)
      		return (t * t) % mod;
      	else
      		return (((t * t) % mod) * a) % mod;   
      }
      
      signed main()
      {
      	int n , m;
      	cin >> n >> m;
      	cout << (m % MOD * (f(m - 1, n - 1 , MOD) % MOD)) % MOD <<endl;
      	return 0;
      }
      

      出棧序列

      題目描述

      給定一個長度為n的、僅由小寫字母組成的字符串,將其按序依次放入棧中。

      請問在所有可能的出棧序列中,字典序最小的出棧序列是多少?

      輸入格式

      輸入第一行, 一個正整數n
      輸入第二行,一個長度為n的字符串

      輸出格式

      輸出所有出棧序列中,字典序最小的出棧序列

      數據范圍

      對于\(30\%\)的數據,\(1 \leq n \leq 10\)
      對于\(60\%\)的數據,\(1 \leq n \leq 10^3\)

      對于\(100\%\)的數據,\(1 \leq n \leq 10^5\)

      樣例數據

      輸入:

      3
      yes

      輸出:

      esy

      說明:

      字符y、e、s依次進棧,所有出棧的可能性有:
      {yes}、{yse}、{eys}、{esy}、{sey}
      其中 {esy} 的字典序最小

      解題思路

      其實這道題是一道貪心題。
      當棧頂的元素比還可以進棧序列中的最小值大時,那么這是出棧得到的序列一定不是最小的。
      所以只要用棧來模擬一遍即可。

      #include <bits/stdc++.h>
      using namespace std;
      
      const int MAXN = 1E5 + 10;
      
      stack<char> stk;
      char a[MAXN] ;
      int n;
      string s;
      
      int main()
      {
      	cin >> n >> s;
      	a[n - 1] = s[n - 1];
      	for(int i = n - 2 ; i >= 1 ; i --)
      		if(s[i] < a[i - 1]) a[i] = s[i];
      		else a[i] = a[i - 1];
      	int cnt = 1;
      	stk.push(s[0]);
      	while(!stk.empty() || cnt < n)
      	{
      		if(stk.empty() || (cnt < n && stk.top() > a[cnt]))
      			stk.push(s[cnt]) , cnt ++;
      		else
      		{
      			cout << stk.top();
      			stk.pop();
      		}
      	}
      	cout << endl;
      	return 0;
      }
      
      posted @ 2022-11-24 11:50  liziyu0714  閱讀(190)  評論(0)    收藏  舉報
      主站蜘蛛池模板: 香港日本三级亚洲三级| 青青草国产精品一区二区| 亚洲精品tv久久久久久久久久| 玩弄放荡人妻少妇系列| 午夜AAAAA级岛国福利在线| 久久精品国产亚洲成人av| 丰满少妇又爽又紧又丰满在线观看 | 四虎成人精品在永久免费| 亚洲中文字幕精品第三区| 日本高清不卡一区二区三| 亚洲精品tv久久久久久久| 宿松县| 欧美一区二区三区性视频| 免费av深夜在线观看| 日韩丝袜亚洲国产欧美一区 | 国产AV福利第一精品| 国产专区一va亚洲v天堂| 亚洲高清aⅴ日本欧美视频| 国产成人精品永久免费视频| 国产精品自在线拍国产手机版 | 色综合五月伊人六月丁香| 久久热这里只有精品国产| 极品人妻少妇一区二区| 少妇粗大进出白浆嘿嘿视频| 国产精品久久露脸蜜臀| 高清有码国产一区二区| 97精品国产91久久久久久久| 国产午夜福利视频合集| 精品三级在线| 亚洲国产欧美一区二区好看电影| 亚洲精品欧美综合二区| 五河县| 熟女国产精品一区二区三| 久久一级黄色大片免费观看| 免费看欧美全黄成人片| 国产69精品久久久久人妻刘玥| 亚洲精品区二区三区蜜桃| 深夜av在线免费观看| 又色又爽又黄18禁美女裸身无遮挡| 男人的天堂va在线无码| 亚洲国产精品一区第二页|