時間限制: 1sec 記憶體限制: 128mb 提交: 10 解決: 7
題目描述
fans是個acm程式設計迷。有時侯,他表現出很強烈的逆反心理,你往東,他往西,你往南,他偏往北。這一次,不知道又是誰惹著他了,好端端的乙個個01串,到了他的手裡,都變成10串了。請你編個程式來模仿他的行為,將01串(長度≤200),全變成10串吧。
輸入
0110100100100 1000000010000000000
輸出
1001011011011 0111111101111111111思路:每一位取反
#includeintmain()
printf("\n
");}
return0;
}
時間限制: 1sec 記憶體限制: 128mb 提交: 6 解決: 5
題目描述
在mars星球上,每個mars人都隨身佩帶著一串能量項鍊。在項鍊上有 n顆能量珠。能量珠是一顆有頭標記與尾標記的珠子,這些標記對應著某個正整數。並且,對於相鄰的兩顆珠子,前一顆珠子的尾標記一定等於後一顆珠子的頭標 記。因為只有這樣,通過吸盤(吸盤是mars人吸收能量的一種器官)的作用,這兩顆珠子才能聚合成一顆珠子,同時釋放出可以被吸盤吸收的能量。如果前一顆 能量珠的頭標記為m,尾標記為r,後一顆能量珠的頭標記為r,尾標記為n,則聚合後釋放的能量為m*r*n(mars單位),新產生的珠子的頭標記為m, 尾標記為n。
需要時,mars人就用吸盤夾住相鄰的兩顆珠子,通過聚合得到能量,直到項鍊上只剩下一顆珠子為止。顯然,不同的聚合順序得到的總能量是不同的,請你設計乙個聚合順序,使一串項鍊釋放出的總能量最大。
例如:設n=4,4顆珠子的頭標記與尾標記依次為(2,3) (3,5) (5,10) (10,2)。我們用記號◎表示兩顆珠子的聚合操作,(j◎k)表示第j,k兩顆珠子聚合後所釋放的能量。則第4、1兩顆珠子聚合後釋放的能量為:
(4◎1)=10*2*3=60。
這一串項鍊可以得到最優值的乙個聚合順序所釋放的總能量為
((4◎1)◎2)◎3)=10*2*3+10*3*5+10*5*10=710。
輸入第一行是乙個正整數n(4≤n≤100),表示項鍊上珠子的個數。第二行 是n個用空格隔開的正整數,所有的數均不超過1000。第i個數為第i顆珠子的頭標記(1≤i≤n),當i〈n時,第i顆珠子的尾標記應該等於第i+1顆 珠子的頭標記。第n顆珠子的尾標記應該等於第1顆珠子的頭標記。
至於珠子的順序,你可以這樣確定:將項鍊放到桌面上,不要出現交叉,隨意指定第一顆珠子,然後按順時針方向確定其他珠子的順序。
輸出只有一行,是乙個正整數e(e≤2.1*10^9),為乙個最優聚合順序所釋放的總能量
樣例輸入
42 3 5 10
1 #include2 #include3#define m 210
4using
namespace
std;
5int
a[m],f[m][m];
6int
main()715
for(int len=1;len<=n-1;len++)
16for(int i=1;i<=2*n-len;i++)
1722
int ans=0;23
for(int i=1;i<=n;i++)
24 ans=max(ans,f[i][i+n-1
]);25 printf("%d"
,ans);
26return0;
27 }
時間限制: 1sec 記憶體限制: 32mb 提交: 12 解決: 6
題目描述有乙個長度為整數l(1<=l<=10000)的馬路,可以想象成數軸上長度為l的乙個線段,起點是座標原點,在每個整數座標點有一棵樹,即在0,1,2,...,l共l+1個位置上有l+1棵樹。
現在要移走一些樹,移走的樹的區間用一對數字表示,如 100 200表示移走從100到200之間(包括端點)所有的樹。
可能有m(1<=m<=100)個區間,區間之間可能有重疊。現在要求移走所有區間的樹之後剩下的樹的個數。
輸入兩個整數l(1<=l<=10000)和m(1<=m<=100)。
接下來有m組整數,每組有一對數字。
輸出可能有多組輸入資料,對於每組輸入資料,輸出乙個數,表示移走所有區間的樹之後剩下的樹的個數。
樣例輸入
4 21 20 2
11 2
1 54 7
0 0
1 #include2 #include//memset標頭檔案
3const
int maxn = 100010;4
intmain()
16for (i = j = 0; i <= l; i++)
20 printf("
%d\n
", j);21}
22}23return0;
24 }
時間限制: 0sec 記憶體限制: 128mb 提交: 13 解決: 6
題目描述
給出2個序列a=,b=,從a、b中各選出n個元素進行一一配對(可以不按照原來在序列中的順序),並使得所有配對元素差的絕對值之和最大。
輸入輸入的第1行為1個整數n 第2行包含n個整數,題目中的a序列。 第3行包含n個整數,題目中的b序列。
輸出乙個數,最大配對
樣例輸入
42 5 6 3
1 4 6 7
1 #include2 #include3 #include4using
namespace
std;
5int a[10000],b[10000];6
intn;
7int
main()
818 printf("
%d\n
",cnt);19}
20return0;
21}2223
時間限制: 1sec 記憶體限制: 128mb 提交: 10 解決: 7
題目描述
有人說倒數第一是毫無壓力的,因為沒人任何壓力而言,但反而倒數第二是提心吊膽的,因為擔心倒數第一有一天考試的時候不來,自己淪為倒數第一(^_^)
這道題就是求n個成績(整數)中倒數第二小的數。
每乙個整數都獨立看成乙個數,比如,有三個數分別是2,2,5,
那麼,第二小的數就是2。
輸入輸入包含多組測試資料。
輸入的第一行是乙個整數c,表示有c組測試資料;
每組測試資料的第一行是乙個整數n,表示本組測試資料有n個整(2<=n<=10),
接著一行是 n個整數 (每個數均小於100);
輸出請為每組測試資料輸出第二小的整數,每組輸出佔一行。
樣例輸入
22 1 2
3 1 1 3
1 #include 2 #include 3using
namespace
std;45
int cmp(const
void *x,const
void *y)69
10int
main()
1124
25return0;
26 }
達觀杯文字智慧型處理挑戰賽
筆者嘗試了一下達觀杯的比賽,如下圖所示 import pandas as pd import imp from sklearn.linear model import logisticregression from sklearn.feature extraction.text import cou...
2018華為軟體精英挑戰賽實況記錄
今天想寫一篇部落格記錄一下自己參加華為軟挑的過程,估計會在接下來乙個月陸續更新。題目其實幾天前就看過了,也寫了兩天,不過報名還是今天的事。今年的題目相對還是比較好理解的,而且方向也很明確 用機器學習方法訓練資料,隨後用裝箱問題的思路解決。由於自己缺少機器學習的基礎,因此第一步暫時採用了將訓練資料按周...
達觀杯文字智慧型處理挑戰賽練習
比賽官方對資料的說明是資料報含兩個檔案 train set.csv和test set.csv 一.初識資料 train set.csv 此資料集用於訓練模型,每一行對應一篇文章。文章分別在 字 和 詞 的級別上做了脫敏處理。共有四列 第一列是文章的索引 id 第二列是文章正文在 字 級別上的表示,即...