2013第四届蓝桥杯预赛C语言本科组B答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Power By :忆_碎碎念

第四届蓝桥杯c/c++ 本科B组,c++语言编写(注:c++的STL有各种便利,推荐用c++,但输入输出虽然用cin、cout很方便,可是速度和scanf、printf差很多,大量数据时不要用)

1

1999-7-16

2

#include

using namespace std ;

int main()

{

int a, b, c, d, e ;

int sum = 0 ;

for (a = 1; a <= 9; a++)

for (b = 1; b <= 9; b++)

{

if (a == b) continue ;

for (c = 1; c <= 9; c++)

{

if (c == b || c == a) continue ;

for (d = 1; d <= 9; d++)

{

if (d == c || d == b || d== a) continue ;

for (e = 1; e <= 9; e++)

{

if (e == d || e == c || e == b || e == a) continue;

if ((a * 10 + b) * (c * 100 + d * 10 + e) == (a * 100 + d * 10 + b) * (c * 10 + e))

sum++ ;

}

}

}

}

cout<

return 0 ;

}

3

#include

using namespace std ;

int sum = 0 ;

void f (int n, int state) ;

int main()

{

f (39, 1) ;

cout<

return 0 ;

}

void f (int n, int state)

{

if (n == 0 && state == 1) sum++ ;

else if (n > 0)

{

f (n-1, !state) ;

f (n-2, !state) ;

}

}

4

5

*haystack != *needle

6

p++

7

#include

#include

using namespace std ;

int icount = 0 ;

int a[10000] ;

int main()

{

//freopen ("a.txt", "r", stdin);

int n ;

cin>>n ;

while (n--)

{

while ((cin>>a[icount++]).get() != '\n');

}

sort (a, a+icount) ;

int i, prev, num1, num2;

prev = a[0];

for (i = 1; i < icount; i++)

{

if (a[i] == prev)

{

num2 = a[i];

a[0]--;

}

if (a[i] != a[0] + i)

{

num1 = a[0] + i;

a[0]++;

}

prev = a[i];

}

cout<

return 0 ;

}

8

#include

#include

using namespace std;

string str1, str2;

int main()

{

cin>>str1>>str2;

int icount = 0, i;

for (i = 0; i < str1.size() - 1; i++)

if (str1[i] != str2[i])

{

icount++;

str1[i+1] = str1[i+1] == 'o' ? '*' : 'o';

//str2[i+1] = str2[i+1] == 'o' ? '*' : 'o';

}

cout<

return 0;

}

9

容我再调试下

10

#include

using namespace std;

int a[50000];

int main()

{

int n, i, j;

cin>>n;

for (i = 0; i < n; i++)

cin>>a[i];

int icount=0,max,min;

for (i = 0; i < n; i++)

{

max = min = a[i];

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

{

if (a[j] > max) max = a[j];

if (a[j] < min) min = a[j];

if (max - min == j - i) icount++;

}

}

cout<

return 0;

}

相关文档
最新文档