数据结构与算法实验题答案

2019-03-15 18:40

A 装箱问题模拟(20)

源码:

#include #include using namespace std;

char box[1010];

int main() {

memset(box,100,sizeof(box)); int N; int t;

int num=0; cin>>N;

int temp = N; while(temp--) {

cin>>t;

for (int i=0;i

int a = box[i]; if (a>=t) {

if (a==100) num++;

box[i] -=t;

cout<

cout<

//system(\ return 0; }

B 表达式转换(25)

源码:

#include #include #include using namespace std;

stack sta;

int main() {

string s;

string anwser; cin>>s;

int i;

bool number = false; bool firstFlag = true; string snum = \

for(i = 0; i < s.length(); ++i) {

if(s[i] >= '0' && s[i] <= '9' || s[i] == '.') {

number = true; snum += s[i]; }

else if(number == true) {

number = false; if(firstFlag)

firstFlag = false; else

anwser += \ if(snum[0] == '+')

snum.erase(snum.begin()); anwser += snum;

snum = \ }

if(s[i] == '+' || s[i] == '-') {

if(i == 0 ||

s[i-1] == '+' || s[i-1] == '-' ||

s[i-1] == '*' || s[i-1] == '/' || s[i-1] == '(' ) snum += s[i]; else {

while(sta.size() && sta.top() != '(') {

int t = sta.top(); if(firstFlag)

firstFlag = false; else

anwser += \ anwser += t; sta.pop(); }

sta.push(s[i]); } }

else if(s[i] == '*' || s[i] == '/') {

while(sta.size() && sta.top() != '(') {

int t = sta.top();

if(t == '-' || t == '+') break; if(firstFlag)

firstFlag = false; else

anwser += \ anwser += sta.top(); sta.pop(); }

sta.push(s[i]); }

else if(s[i] == ')') {

while(sta.size() && sta.top() != '(') {

if(firstFlag)

firstFlag = false; else

anwser += \ anwser += sta.top(); sta.pop();

}

if(sta.size()) sta.pop(); }

else if(s[i] == '(') sta.push(s[i]); }

if(snum != \ {

if(firstFlag)

firstFlag = false; else

anwser += \ anwser += snum; }

while(sta.size()) {

if(firstFlag)

firstFlag = false; else

anwser += \ anwser += sta.top(); sta.pop(); }

cout<

C 家谱处理(30)

源码:

#include #include #include using namespace std;

struct Person {

string name; int level; };

int main() {

// freopen(\ ios_base::sync_with_stdio(0); // cin.tie(0);

vector family_tree; int n,m; cin>>n>>m; while(n--) {

if(cin.get()!='\\n') cin.unget(); int s_cnt=0;

while(cin.get()==' ') ++s_cnt; cin.unget(); Person pe_tmp;

pe_tmp.level=s_cnt; cin>>pe_tmp.name;

family_tree.push_back(pe_tmp); }

// for(vector::iterator

it=family_tree.begin();it!=family_tree.end();++it) // {

// cout<name<<' '<level<

string name_a,name_b,relation; while(m--) {

cin>>name_a; int count=6;

while(count--) cin.get(); char ch; cin.get(ch);

if(ch=='c'||ch=='e') {

relation=\ }

else if(ch=='s') relation=\ else {

relation=\ }

cin.ignore(256,'f');


数据结构与算法实验题答案.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2014春期七年级英语第一次月考试卷

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: