C++ 函数部分(1)
1.编写一个求X的n次方的函数
.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }
#include <iostream>
using namespace std;
double power(double x, int n);
void main(void)
{
double x;
int n;
cout<<"input x and n to calc the value of the x to the power n"<<endl;
cout<<"x = ";
cin>>x;
cout<<"n = ";
cin>>n;
cout<<x<<" to the power "<<n<<" is " <<power(x,n)<<endl;
fflush(stdin);//清空输入缓冲区中的数据
getchar(); //暂停
}
double power(double x , int n)
{
double val = 1.0;
while (n--)
val *= x;
return (val);
}
注意:如果第16行的fflush(stdin)不加,而保留17行的getchar()语句达不到暂停效果,因为:在用cin(或scanf)输入完后回输入回车键[Enter],表明输入结束,此时[Enter]会留在输入缓冲区中,当程序运行到getchar();语句时就会读入[Enter],从而使控制台闪过,没有达到要控制台停留的效果,所以,在getchar();语句之前要用fflush(stdin);清空输入缓冲区的内容。
2.输入一个8位的二进制数,将其转换为十进制数输出
分析:将二进制转换为10进制,只要讲二进制数的每一位乘以该位的权然后相加即可。
如:000011012 = 0(27)+0(26)+0(25)+0(24)+1(23)+1(22)+0(21)+1(20) = 1310 。
#include <iostream>
using namespace std;
double power(double x, int n);
void main(void)
{
int i,
value = 0;
char ch;
cout<<"Enter an 8 bit binary number: ";
for(i = 7; i >=0; i--)
{
//sizeof(char) = 1
//sizeof是C/C++中的一个操作符(operator),简单的说其作用就是返回一个对象或者类型所占的内存字节数。
cin >> ch; // 注意键盘输入的数字是字符形式,并且采用一个个单独接收,因为char 类型一次只能接收1个字节的长度
if('1' == ch) // 只需要处理字符为'1'的情况
value += int(power(2,i));
}
cout<<"Decimal value is "<<value<<endl;
fflush(stdin);
getchar();
}
double power(double x , int n)
{
double val = 1.0;
while(n--)
val *= x;
return (val);
}
.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }
3.编写程序求的π值,公式如下:
其中arctan用如下形式的级数计算:
直到级数的某一项绝对值不大于10-15为止;π和x均为double型。
#include <iostream>
using namespace std;
void main()
{
double a,b;
double arctan(double x);
//注意因为整数相除结果取整,如果参数写1/5,1/239,那么结果都是0
a = 16.0*arctan(1/5.0);
b = 4.0*arctan(1/239.0);
cout<<"PI = "<<a-b<<endl;
getchar();
}
double arctan(double x)
{
int i;
double r,e,f,sqr;
sqr = x*x;
r = 0;
e = x;
i = 1;
while(e/i >1e-15)
{
f = e/i;
r = (i%4 == 1)?r+f : r-f;
e = e*sqr;
i += 2;
}
return r;
}
4.寻找并输出11~999之间的数m,它满足m,m2和m3均为回文数。
所谓回文数是指其各位数字左右对称的整数,如121,676,95259等。满足上述条件的数如m = 11,m2 =121,m3 = 1331.
分析:判断一个数是否为回文,可以用除以10取余的方法,从最低位开始,依次取出该数的各位数字,然后用最低位充当最高位,按反序重新构成新的数,比较与原数是否相等,若相等,则原数为回文。
#include <iostream>
#include <iomanip> // 使用setw()控制宽度函数
using namespace std;
void main()
{
bool symm(long n);
long m;
cout.flags(ios::left); //输出左对齐
for(m = 11; m< 1000; m++)
{
if(symm(m)&&symm(m*m)&&symm(m*m*m))
cout<<"m = "<<setw(5)<<m<<" m*m = "<<setw(7)<<m*m<<" m*m*m = "<<setw(12)<<m*m*m<<endl;
}
getchar();
}
bool symm(long n)
{
long i,m;
i = n;
m = 0;
while(i)
{
m = m*10 + i%10; // m值上升一位 加上i的最低位
i = i/10; // 去掉i的最低位
}
return (m == n);
}
.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }
运行结果:
m = 11 m*m = 121 m*m*m = 1331
m = 101 m*m = 10201 m*m*m = 1030301
m = 111 m*m = 12321 m*m*m = 1367631
在C++中
控制输出宽度用iosamp函数库的setw
#include <iomanip>
using namespace std;
cout.setprecision(10); //控制精度
double a = 1.2;
cout<<setw(10)<<a<<endl; //setw()控制宽度
.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }
C++中默认是右对齐
cout.flags(ios::left); //左对齐
#include <iostream>
using namespace std;
#define STACK_INIT_SIZE 100
struct Stack{
char *base;
char *top;
}sq;
void initstack(Stack &s)
{
s.base = new char[STACK_INIT_SIZE*sizeof(char)];
s.top = s.base;
}
void push(Stack &s , char e)
{
*s.top = e;
++s.top;
}
char pop(Stack &s)
{
s.top--;
return *s.top;
}
void main()
{
Stack s;
initstack(s);
int a,
j = 0;
char p[100];
char c = 0,
d = 0;
cout<<"这是回文判断程序"<<endl;
cout<<"请输入测试字符串"<<endl;
cin.getline(p,100); //接收一个字符串, 最长长度为100个字符
a = strlen(p); //获取字符串长度
for(int i = 0; i<a;++i)
push(s,p[i]);
do{
c = pop(s);
d = p[j];
if(c != d ) break;
j++;
}while(j<=a/2-1);
if( j == a/2)
cout<<"你输入的测试字符串为回文"<<endl;
else
cout<<"测试字符串不是回文"<<endl;
fflush(stdin);
getchar();
}
.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }
.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }
6.计算如下公式,并输出结果:
其中r,s的值由键盘输入,sinx的近似值按如下公式计算:
计算精度为10-6.当某项的绝对值小于计算精度时,停止累加,累加和即为该精度下的sinx的近似值。
#include <iostream>
#include <cmath>
using namespace std;
void main()
{
double k,r,s;
double tsin(double x);
cout<<"r = ";
cin>>r;
cout<<"s = ";
cin>>s;
if(r*r <= s*s)
k = sqrt(tsin(r)*tsin(r)+tsin(s)*tsin(s));
else
k = tsin(r*s)/2;
cout<<k<<endl;
fflush(stdin);
getchar();
}
double tsin(double x)
{
double p = 0.000001,
g = 0,
t = x;
int n = 1;
do{
g = g + t;
n++;
t = -t*x*x/(2*n-1)/(2*n-2); //自左至右运算相当于 -t*x*x/[(2*n-1)*(2*n-2)]
}while(fabs(t) >= p);
return g;
}
.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }
7.投骰子的随机游戏
游戏规则是:每个骰子有6面,点数分别为1,2,3,4,5,6.游戏者在程序设计开始时输入一个无符号整数,作为产生随机数的种子。每轮投两次骰子,第一轮如果和数为7或11则为胜,游戏结束;和数为2,3或12则为负,游戏结束;和数为其它值则将此值作为自己的点数,继续第二轮,第三轮,……直到某轮的和数等于点数则取胜,若在此前出现和数为7则为负。
#include <iostream>
#include <cstdlib>
using namespace std;
int rolldice(void);
void main()
{
int gamestatus,sum,mypoint;
unsigned seed;
cout<<"Please enter an unsigned integer:";
cin>>seed; // 输入随机数种子
srand(seed); //将种子传递给rand()
sum = rolldice(); //第一轮投骰子,计算和数
switch(sum)
{
case 7: // 如果和数为7或11则为胜,状态为1
case 11:
gamestatus = 1;
break;
case 2: // 和数为2,3或12则为负,状态为2
case 3:
case 12:
gamestatus = 2;
break;
default: // 其它情况,游戏尚无结果,状态为0,记下点数,为下一轮做准备
gamestatus = 0;
mypoint = sum;
cout<<"point is "<<mypoint<<endl;
break;
}
while(gamestatus == 0) // 只有状态仍为0,就继续进行下一轮
{
sum = rolldice();
if(sum == mypoint) //某轮的和数等于点数则取胜,状态置1
gamestatus = 1;
else
if(sum == 7) //出现和数为7则为负,状态置2
gamestatus = 2;
}
//当状态不为0时上面的循环结束,以下程序段输出游戏结果
if(gamestatus == 1)
cout<<"Player wins\n";
else
cout<<"Player loses\n";
fflush(stdin);
getchar();
}
int rolldice(void)
{ //投骰子,计算和数,输出和数
int die1,
die2,
worksum;
die1 = 1+rand()%6;
die2 = 1+rand()%6;
worksum = die1+die2;
cout<<"player rolled "<<die1<<'+'<<die2<<'='<<worksum<<endl;
return worksum;
}
.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }结果:
Please enter an unsigned integer:9
player rolled 3+2=5
point is 5
player rolled 2+1=3
player rolled 5+6=11
player rolled 4+1=5
Player wins
系统函数int rand(void)的功能是产生一个伪随机数,调用rand(void)函数产生随机数需要一个"种子"值,如果设置的种子值相同,则产生相同的随机数,所以叫做伪随机数。如果调用rand()之前不设置"种子"值,则rand总是默认种子为1."种子"值的设置,是在调用rand()之前,通过调用void srand(unsigned int seed)为其设置的。
.src_container{background-color:#e7e5dc; width:99%; overflow:hidden; margin:12px 0 12px 0 !important; padding:0px 3px 3px 0px}
.src_container .titlebar{ background-color:#d4dfff; border:1px solid #4f81bd; border-bottom:0; padding:3px 24px; margin:0; width:auto; line-height:120%; overflow:hidden; text-align:left; font-size:12px}
.src_container .toolbar{ display:inline; font-weight:normal; font-size:100%; float:right; cursor:hand; color:#00f; text-align:left; overflow:hidden}
.toolbar span.button{ display:inline; font-weight:normal; font-size:100%; cursor:hand; color:#00f; text-align:left; overflow:hidden; cursor:pointer;}
.src_container div.clientarea{ background-color:white; border:1px solid #4f81bd; margin:0; width:auto !important; width:100%; height:auto; overflow:auto; text-align:left; font-size:12px; font-family: "Courier New","Consolas","Fixedsys",courier,monospace,serif}
.src_container ol.mainarea{ padding:0 0 0 52px; margin:0; background-color:#f7f7ff !important}
.number_show{ padding-left:52px !important; list-style:decimal outside !important}
.number_show li{ list-style:decimal outside !important; border-left:1px dotted #4f81bd}
.number_hide{ padding-left:0px !important; list-style-type:none !important}
.number_hide li{ list-style-type:none !important; border-left:0px}
ol.mainarea li{ display:list-item !important; font-size:12px !important; margin:0 !important; line-height:18px !important; padding:0 0 0 0px !important; background-color:#f7f7ff !important; color:#4f81bd}
ol.mainarea li pre{color:black; line-height:18px; padding:0 0 0 12px !important; margin:0em; background-color:#fff !important}
.linewrap ol.mainarea li pre{white-space:pre-wrap; white-space:-moz-pre-wrapwhite-space:-pre-wrap; white-space:-o-pre-wrap; word-wrap:break-word}
ol.mainarea li pre.alt{ background-color:#f7f7ff !important}
.src_container{background-color:#e7e5dc; width:99%; overflow:hidden; margin:12px 0 12px 0 !important; padding:0px 3px 3px 0px}
.src_container .titlebar{ background-color:#d4dfff; border:1px solid #4f81bd; border-bottom:0; padding:3px 24px; margin:0; width:auto; line-height:120%; overflow:hidden; text-align:left; font-size:12px}
.src_container .toolbar{ display:inline; font-weight:normal; font-size:100%; float:right; cursor:hand; color:#00f; text-align:left; overflow:hidden}
.toolbar span.button{ display:inline; font-weight:normal; font-size:100%; cursor:hand; color:#00f; text-align:left; overflow:hidden; cursor:pointer;}
.src_container div.clientarea{ background-color:white; border:1px solid #4f81bd; margin:0; width:auto !important; width:100%; height:auto; overflow:auto; text-align:left; font-size:12px; font-family: "Courier New","Consolas","Fixedsys",courier,monospace,serif}
.src_container ol.mainarea{ padding:0 0 0 52px; margin:0; background-color:#f7f7ff !important}
.number_show{ padding-left:52px !important; list-style:decimal outside !important}
.number_show li{ list-style:decimal outside !important; border-left:1px dotted #4f81bd}
.number_hide{ padding-left:0px !important; list-style-type:none !important}
.number_hide li{ list-style-type:none !important; border-left:0px}
ol.mainarea li{ display:list-item !important; font-size:12px !important; margin:0 !important; line-height:18px !important; padding:0 0 0 0px !important; background-color:#f7f7ff !important; color:#4f81bd}
ol.mainarea li pre{color:black; line-height:18px; padding:0 0 0 12px !important; margin:0em; background-color:#fff !important}
.linewrap ol.mainarea li pre{white-space:pre-wrap; white-space:-moz-pre-wrapwhite-space:-pre-wrap; white-space:-o-pre-wrap; word-wrap:break-word}
ol.mainarea li pre.alt{ background-color:#f7f7ff !important}
.codearea{ color:black; background-color:white; line-height:18px; border:1px solid #4f81bd; margin:0; width:auto !important; width:100%; overflow:auto; text-align:left; font-size:12px; font-family: "Courier New","Consolas","Fixedsys","BitStream Vera Sans Mono", courier,monospace,serif}
.codearea pre{ color:black; line-height:18px; padding:0 0 0 12px !important; margin:0em; background-color:#fff !important}
.linewrap pre{white-space:pre-wrap; white-space:-moz-pre-wrap; white-space:-pre-wrap; white-space:-o-pre-wrap; word-wrap:break-word; word-break:normal}
.codearea pre.alt{ background-color:#f7f7ff !important}
.codearea .lnum{color:#4f81bd;line-height:18px}
.codearea{ color:black; background-color:white; line-height:18px; border:1px solid #4f81bd; margin:0; width:auto !important; width:100%; overflow:auto; text-align:left; font-size:12px; font-family: "Courier New","Consolas","Fixedsys","BitStream Vera Sans Mono", courier,monospace,serif}
.codearea pre{ color:black; line-height:18px; padding:0 0 0 12px !important; margin:0em; background-color:#fff !important}
.linewrap pre{white-space:pre-wrap; white-space:-moz-pre-wrap; white-space:-pre-wrap; white-space:-o-pre-wrap; word-wrap:break-word; word-break:normal}
.codearea pre.alt{ background-color:#f7f7ff !important}
.codearea .lnum{color:#4f81bd;line-height:18px}
C++ 函数部分(1)的更多相关文章
- Python 小而美的函数
python提供了一些有趣且实用的函数,如any all zip,这些函数能够大幅简化我们得代码,可以更优雅的处理可迭代的对象,同时使用的时候也得注意一些情况 any any(iterable) ...
- 探究javascript对象和数组的异同,及函数变量缓存技巧
javascript中最经典也最受非议的一句话就是:javascript中一切皆是对象.这篇重点要提到的,就是任何jser都不陌生的Object和Array. 有段时间曾经很诧异,到底两种数据类型用来 ...
- JavaScript权威指南 - 函数
函数本身就是一段JavaScript代码,定义一次但可能被调用任意次.如果函数挂载在一个对象上,作为对象的一个属性,通常这种函数被称作对象的方法.用于初始化一个新创建的对象的函数被称作构造函数. 相对 ...
- C++对C的函数拓展
一,内联函数 1.内联函数的概念 C++中的const常量可以用来代替宏常数的定义,例如:用const int a = 10来替换# define a 10.那么C++中是否有什么解决方案来替代宏代码 ...
- 菜鸟Python学习笔记第一天:关于一些函数库的使用
2017年1月3日 星期二 大一学习一门新的计算机语言真的很难,有时候连函数拼写出错查错都能查半天,没办法,谁让我英语太渣. 关于计算机语言的学习我想还是从C语言学习开始为好,Python有很多语言的 ...
- javascript中的this与函数讲解
前言 javascript中没有块级作用域(es6以前),javascript中作用域分为函数作用域和全局作用域.并且,大家可以认为全局作用域其实就是Window函数的函数作用域,我们编写的js代码, ...
- 复杂的 Hash 函数组合有意义吗?
很久以前看到一篇文章,讲某个大网站储存用户口令时,会经过十分复杂的处理.怎么个复杂记不得了,大概就是先 Hash,结果加上一些特殊字符再 Hash,结果再加上些字符.再倒序.再怎么怎么的.再 Hash ...
- JS核心系列:浅谈函数的作用域
一.作用域(scope) 所谓作用域就是:变量在声明它们的函数体以及这个函数体嵌套的任意函数体内都是有定义的. function scope(){ var foo = "global&quo ...
- C++中的时间函数
C++获取时间函数众多,何时该用什么函数,拿到的是什么时间?该怎么用?很多人都会混淆. 本文是本人经历了几款游戏客户端和服务器开发后,对游戏中时间获取的一点总结. 最早学习游戏客户端时,为了获取最精确 ...
- Python高手之路【四】python函数装饰器
def outer(func): def inner(): print('hello') print('hello') print('hello') r = func() print('end') p ...
随机推荐
- LeetCode(42)Trapping Rain Water
题目 Given n non-negative integers representing an elevation map where the width of each bar is 1, com ...
- NYOJ27水池数目,类似于FZU1008最大黑区域,简单搜索题~~~
水池数目 时间限制:3000 ms | 内存限制:65535 KB 难度:4 描述 南阳理工学院校园里有一些小河和一些湖泊,现在,我们把它们通一看成水池,假设有一张我们学校的某处的地图,这个地图上 ...
- POJ 2288 汉密尔顿回路 DP解决
题目大意: 有n个岛屿,令Vi为岛屿Ci的权值.一条汉密尔顿路径C1,C2,C3...Cn的值为3部分 第一部分,将路径中的岛的权值相加,第二部分将每条边上的(Ci,Cj),加上所有的Vi*Vj 第三 ...
- [NOI2003]Editor(块状链表)
传送门 看了看块状链表,就是数组和链表的合体. 看上去好高大尚,思想也很简单. 但是发现代码量也不是很小,而且代码理解起来也是费尽得很,倒不如splay用起来顺手. 在加上适用范围貌似不是特别广,所以 ...
- bzoj1059:[ZJOI2007]矩阵游戏【二分图匹配】
Description 小Q是一个非常聪明的孩子,除了国际象棋,他还很喜欢玩一个电脑益智游戏——矩阵游戏.矩阵游戏在一个N*N黑白方阵进行(如同国际象棋一般,只是颜色是随意的).每次可以对该矩阵进行两 ...
- Attribute "not-null" must be declared for element type "property"解决办法
Attribute "not-null" must be declared for element type "property"解决办法 在hiberante ...
- 【ZJOI2017 Round1练习&BZOJ4767】D1T3 两双手(排列组合,DP)
题意: 100%的数据:|Ax|,|Ay|,|Bx|,|By| <= 500, 0 <= n,Ex,Ey <= 500 思路:听说这是一道原题 只能往右或者下走一步且有禁止点的简化版 ...
- POJ3150:Cellular Automaton
题意看不懂加题目想不通,很菜. n<=500个数围城环,每次操作对每个数Ai把与i在环上相距不超过d<n/2(包括Ai)的数加起来取模m<=1e6,求K<=1e7次操作后的环. ...
- Separate code and data contexts: an architectural approach to virtual text sharing
The present invention provides a processor including a core unit for processing requests from at lea ...
- [Bzoj2286][Sdoi2011]消耗战(虚树模板题附讲解)
2286: [Sdoi2011]消耗战 Time Limit: 20 Sec Memory Limit: 512 MBSubmit: 4896 Solved: 1824[Submit][Statu ...