Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 14 additions & 11 deletions 第2章暴力破解/2.2模拟/3.其他模拟/2-10手机键盘.cpp
Original file line number Diff line number Diff line change
@@ -1,21 +1,24 @@
#include<iostream>

#include<string.h>
using namespace std;
int keytab[26]= {1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,1,2,3,4,1,2,3,1,2,3,4};
int keytab[26]= {
1,2,3,1,2,3,
1,2,3,1,2,3,1,2,3,
1,2,3,4,1,2,3,1,2,3,4
};

int main() {
char words[100]= {'\0'};
while(scanf("%s",words)!=EOF) {
string str;
while(cin>>str) {
int time=0;
int i=0;
char temp=words[i++];
while(temp!='\0') {
//�Ƿ���һ��������
if((words[i]-temp)==(keytab[words[i]-'a']-keytab[temp-'a'])) {
char temp;
for(int i=0; i<str.size(); i++) {
time+=keytab[str[i]-'a'];
//������ֵ������ĸ��ֵ����һ��������
if(i>0&&(str[i]-temp)==(keytab[str[i]-'a']-keytab[temp-'a'])) {
time+=2;
}
time+=keytab[temp-'a'];
temp=words[i++];
temp=str[i];
}
printf("%d\n",time);
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,5 @@
#include<iostream>

using namespace std;

int main() {
int n;
while(scanf("%d",&n)!=EOF) {
Expand Down
28 changes: 16 additions & 12 deletions 第2章暴力破解/2.2模拟/3.其他模拟/2-9剩下的树.cpp
Original file line number Diff line number Diff line change
@@ -1,25 +1,29 @@
#include<iostream>

using namespace std;

const int MAXL=10001;
//bool������ģ����·������false��û��true
//bool������ģ����·
bool road[MAXL];

int main() {
int l,m;
while(scanf("%d %d",&l,&m)!=EOF) {
int trees=l+1;
while(m--) {
int left,right;
scanf("%d %d",&left,&right);
for(int i=left; i<=right; ++i) {
if(!road[i]) {
road[i]=true;
trees--;
while(scanf("%d%d",&l,&m)!=EOF) {
int left,right,trees=0;
for(int i=0; i<=l; i++) {
road[i]=true;
}
for(int i=0; i<m; i++) {
scanf("%d%d",&left,&right);
for(int j=left; j<=right; j++) {
if(road[j]) {
road[j]=false;
}
}
}
for(int i=0; i<=l; i++) {
if(road[i]) {
trees++;
}
}
printf("%d\n",trees);
}
return 0;
Expand Down

This file was deleted.

This file was deleted.

26 changes: 0 additions & 26 deletions 第3章排序与查找/3.1排序/test3-4奥运排序问题.cpp

This file was deleted.

11 changes: 4 additions & 7 deletions 第3章排序与查找/3.2查找/3-5查找.cpp
Original file line number Diff line number Diff line change
@@ -1,19 +1,16 @@
#include<iostream>
#include<algorithm>

using namespace std;

//���ֲ���
bool BinarySearch(int n,int target,int num[]) {
int left=0,right=n-1;
while(left<=right) {
int middle=(left+right)/2;
if(num[middle]<target) {
left=middle+1;
} else if(num[middle]>target) {
if(target==num[middle]) {
return true;
} else if(target<num[middle]) {
right=middle-1;
} else {
return true;
left=middle+1;
}
}
return false;
Expand Down
11 changes: 5 additions & 6 deletions 第3章排序与查找/3.2查找/test3-5找最小数.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -7,18 +7,17 @@ struct Point {
};
const int MAXN=1001;
Point point[MAXN];
bool mycompare(Point a,Point b){
if(a.x==b.x){
bool mycompare(Point a,Point b) {
if(a.x==b.x) {
return a.y<b.y;
}else{
} else {
return a.x<b.x;
}
}
int main() {
int n;
while(scanf("%d",&n)!=EOF){

for(int i=0;i<n;i++){
while(scanf("%d",&n)!=EOF) {
for(int i=0; i<n; i++) {
scanf("%d %d",&point[i].x,&point[i].y);
}
sort(point,point+n,mycompare);
Expand Down
15 changes: 7 additions & 8 deletions 第3章排序与查找/3.2查找/test3-7找位置.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -6,21 +6,20 @@ int main() {
string str;
while(cin>>str) {
for(int i=0; i<str.size(); i++) {
bool first=false;//�ظ��ַ��ĵ�һ�γ���
bool isFirst=false;
//�����ĸ�ѱ���
if(str[i]=='*')continue;
for(int j=i+1; j<str.size(); j++) {
if(str[i]==str[j]) {
if(!first) {
printf("%c:%d",str[i],i);
first=true;
if(!isFirst) {
printf("%c:%d",str[j],i);
isFirst=true;
}
printf(",%c:%d",str[j],j);
str[j]='*';
str[j]='*';//�ѱ���
}
}
if(first) {
printf("\n");
}
if(isFirst)printf("\n");
}
}
return 0;
Expand Down