[程式設計題] 回文序列
時間限制:1秒
空間限制:32768k
如果乙個數字序列逆置之後跟原序列是一樣的就稱這樣的數字串行為回文序列。例如:輸入描述:, , 是回文序列,
, , 不是回文序列。
現在給出乙個數字序列,允許使用一種轉換操作:
選擇任意兩個相鄰的數,然後從序列移除這兩個數,並用這兩個數字的和插入到這兩個數之前的位置(只插入乙個和)。
現在對於所給序列要求出最少需要多少次操作可以將其變成回文序列。
輸入為兩行,第一行為序列長度n ( 1 ≤ n ≤ 50) 第二行為序列中的n個整數item[i] (1 ≤ iteam[i] ≤ 1000),以空格分隔。
輸出描述:
輸出乙個數,表示最少需要的轉換次數
輸入例子1:
4 1 1 1 3
輸出例子1:
2
#include#include#include#include#include#include#include#include#include#includeusing namespace std;
int a[55]=;
int n;
int main()
int s=0,t=n-1;
int cnt=0;
while(s<=t)
else
cout<<4*sum<[程式設計題] 跳石板
時間限制:1秒
空間限制:32768k
小易來到了一條石板路前,每塊石板上從1挨著編號為:1、2、3.......
這條石板路要根據特殊的規則才能前進:對於小易當前所在的編號為k的 石板,小易單次只能往前跳k的乙個約數(不含1和k)步,即跳到k+x(x為k的乙個非1和本身的約數)的位置。 小易當前處在編號為n的石板,他想跳到編號恰好為m的石板去,小易想知道最少需要跳躍幾次可以到達。
例如:n = 4,m = 24:
4->6->8->12->18->24
於是小易最少需要跳躍5次,就可以從4號石板跳到24號石板
輸入描述:
輸入為一行,有兩個整數n,m,以空格隔開。 (4 ≤ n ≤ 100000) (n ≤ m ≤ 100000)
輸出描述:
輸出小易最少需要跳躍的步數,如果不能到達輸出-1
輸入例子1:
4 24
輸出例子1:
5
#include#include#include#include#include#include#include#include#include#includeusing namespace std;
int n,m;
int dp[100005]=;
void push(int x,vector&v)}}
return;
}int main()
cout<<3*dp[n][0]+6*dp[n][1]<[程式設計題] 數字翻轉
時間限制:1秒
空間限制:32768k
對於乙個整數x,定義操作rev(x)為將x按數字翻轉過來,並且去除掉前導0。例如:
如果 x = 123,則rev(x) = 321;
如果 x = 100,則rev(x) = 1.
現在給出整數x和y,要求rev(rev(x) + rev(y))為多少?
輸入描述:
輸入為一行,x、y(1 ≤ x、y ≤ 1000),以空格隔開。
輸出描述:
輸出rev(rev(x) + rev(y))的值
輸入例子1:
123 100
輸出例子1:
223
#include#include#include#include#include#include#include#include#include#includeusing namespace std;
int rev(int x)
return t;
}int main()
else
}int main()
if((d-b)<0||(d-b)%2!=0)
a=(a+c)/2;
b=(c-a)/2;
c=(d-b)/2;
b1=(d+b)/2;
if(b!=b1)
cout
}
網易2017秋招程式設計題集合
一 如果乙個數字序列逆置之後跟原序列是一樣的就稱這樣的數字串行為回文序列。例如 是回文序列,不是回文序列。現在給出乙個數字序列,允許使用一種轉換操作 選擇任意兩個相鄰的數,然後從序列移除這兩個數,並用這兩個數字的和插入到這兩個數之前的位置 只插入乙個和 現在對於所給序列要求出最少需要多少次操作可以將...
網易2017秋招程式設計題
小易有乙個圓心在座標原點的圓,小易知道圓的半徑的平方。小易認為在圓上的點而且橫縱座標都是整數的點是優雅的,小易現在想尋找乙個演算法計算出優雅的點的個數,請你來幫幫他。例如 半徑的平方如果為25 優雅的點就有 3,4 4,3 0,5 5,0 一共12個點。輸入描述 輸入為乙個整數,即為圓半徑的平方,範...
網易2017秋招程式設計題
第一題 如果乙個數字序列逆置之後跟原序列是一樣的就稱這樣的數字串行為回文序列。例如 是回文序列,不是回文序列。現在給出乙個數字序列,允許使用一種轉換操作 選擇任意兩個相鄰的數,然後從序列移除這兩個數,並用這兩個數字的和插入到這兩個數之前的位置 只插入乙個和 現在對於所給序列要求出最少需要多少次操作可...