delete pics to save space
This commit is contained in:
6
history_source/ccf 入门篇/U5/5.1.1.cpp
Normal file
6
history_source/ccf 入门篇/U5/5.1.1.cpp
Normal file
@ -0,0 +1,6 @@
|
||||
#include<cstdio>
|
||||
int main()
|
||||
{
|
||||
printf("3 7\n");
|
||||
return 0;
|
||||
}
|
18
history_source/ccf 入门篇/U5/5.2.1.cpp
Normal file
18
history_source/ccf 入门篇/U5/5.2.1.cpp
Normal file
@ -0,0 +1,18 @@
|
||||
#include<iostream>
|
||||
using namespace std;
|
||||
int main()
|
||||
{
|
||||
int n,sr[10000],li,w;
|
||||
while(true)
|
||||
{
|
||||
cin>>n;
|
||||
for(int i=0;i<n;i++) cin>>sr[i];
|
||||
w=0;
|
||||
for(int i=1;i<n;i++) if(sr[i]<sr[w]) w=i;
|
||||
li=sr[w];
|
||||
for(int i=w;i>0;i--) sr[i]=sr[i-1];
|
||||
sr[0]=li;
|
||||
for(int i=0;i<n;i++) cout<<sr[i]<<" ";
|
||||
cout<<endl<<endl;
|
||||
}
|
||||
}
|
15
history_source/ccf 入门篇/U5/5.2.2.cpp
Normal file
15
history_source/ccf 入门篇/U5/5.2.2.cpp
Normal file
@ -0,0 +1,15 @@
|
||||
#include<iostream>
|
||||
using namespace std;
|
||||
int main()
|
||||
{
|
||||
int d[10]={1,1,1,1,1,1,1,1,1,1};
|
||||
int a=-1;
|
||||
for(int i=1;i<=1000;i++)
|
||||
{
|
||||
a+=i;
|
||||
d[a%10]=0;
|
||||
}
|
||||
int i;
|
||||
for(i=0;i<10;i++) if(d[i]==1) cout<<i+1<<"<EFBFBD><EFBFBD> ";
|
||||
while(true);
|
||||
}
|
13
history_source/ccf 入门篇/U5/5.2.3.cpp
Normal file
13
history_source/ccf 入门篇/U5/5.2.3.cpp
Normal file
@ -0,0 +1,13 @@
|
||||
#include<iostream>
|
||||
using namespace std;
|
||||
int main()
|
||||
{
|
||||
bool p[52];
|
||||
for(int i=0;i<52;i++) p[i]=1;
|
||||
for(int i=2;i<=52;i++)
|
||||
{
|
||||
for(int a=1;a*i<=52;a++) p[a*i-1]=!p[a*i-1];
|
||||
}
|
||||
for(int i=0;i<52;i++) if(p[i]) cout<<i+1<<" ";
|
||||
while(true);
|
||||
}
|
29
history_source/ccf 入门篇/U5/5.2.4.cpp
Normal file
29
history_source/ccf 入门篇/U5/5.2.4.cpp
Normal file
@ -0,0 +1,29 @@
|
||||
#include<iostream>
|
||||
using namespace std;
|
||||
int main()
|
||||
{
|
||||
int L,M,l[100],r[100],tree[10001];
|
||||
while(true)
|
||||
{
|
||||
cin>>L>>M;
|
||||
for(int i=0;i<=L;i++)
|
||||
{
|
||||
cin>>tree[i];
|
||||
}
|
||||
for(int i=0;i<M;i++)
|
||||
{
|
||||
cin>>l[i]>>r[i];
|
||||
}
|
||||
for(int i=0;i<M;i++)
|
||||
{
|
||||
if(r[i]-l[i]>100) r[i]=l[i]+100;
|
||||
}
|
||||
for(int i=0;i<M;i++)
|
||||
{
|
||||
for(int a=0;a<r[i]-l[i]+1;a++)
|
||||
{
|
||||
cout<<tree[l[i]+a]<<" ";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
23
history_source/ccf 入门篇/U5/5.2.5.cpp
Normal file
23
history_source/ccf 入门篇/U5/5.2.5.cpp
Normal file
@ -0,0 +1,23 @@
|
||||
#include<iostream>
|
||||
#include<cmath>
|
||||
using namespace std;
|
||||
bool pan(int a)
|
||||
{
|
||||
do
|
||||
{
|
||||
if(a%10==0) return 0;
|
||||
a/=10;
|
||||
}
|
||||
while(a>0);
|
||||
return 1;
|
||||
}
|
||||
int main()
|
||||
{
|
||||
int x=sqrt(111111111)+1,a;
|
||||
for(;x*x<=999999999;x++)
|
||||
{
|
||||
a=x*x;
|
||||
if(pan(a)) cout<<x<<"^2="<<a<<endl;
|
||||
}
|
||||
while(true);
|
||||
}
|
7
history_source/ccf 入门篇/U5/5.3.1.cpp
Normal file
7
history_source/ccf 入门篇/U5/5.3.1.cpp
Normal file
@ -0,0 +1,7 @@
|
||||
#include<iostream>
|
||||
using namespace std;
|
||||
int main()
|
||||
{
|
||||
cout<<"C";
|
||||
while(true);
|
||||
}
|
49
history_source/ccf 入门篇/U5/5.3.10.cpp
Normal file
49
history_source/ccf 入门篇/U5/5.3.10.cpp
Normal file
@ -0,0 +1,49 @@
|
||||
#include<iostream>
|
||||
#include<cmath>
|
||||
using namespace std;
|
||||
int main()
|
||||
{
|
||||
int n,m,find,j,w;
|
||||
long long sr1[100000],sr2[10000];
|
||||
while(true)
|
||||
{
|
||||
cin>>n;
|
||||
for(int i=0;i<n;i++) cin>>sr1[i];
|
||||
//===================================
|
||||
bool b;
|
||||
double x;
|
||||
for(int i=n-1;i>0;i--)
|
||||
{
|
||||
b=1;
|
||||
for(int j=0;j<i;j++)
|
||||
{
|
||||
if(sr1[j]>sr1[j+1]){
|
||||
x=sr1[j];
|
||||
sr1[j]=sr1[j+1];
|
||||
sr1[j+1]=x;
|
||||
b=0;
|
||||
}
|
||||
}
|
||||
if(b) break;
|
||||
}
|
||||
//=======================================
|
||||
cin>>m;
|
||||
for(int i=0;i<m;i++) cin>>sr2[i];
|
||||
for(int ii=0;ii<m;ii++)
|
||||
{
|
||||
find=sr2[ii];
|
||||
w=n-1;
|
||||
j=sr1[w]-find;
|
||||
j=abs(j);
|
||||
for(int i=n-2;i>=0;i--)
|
||||
{
|
||||
if(abs(sr1[i]-find)<j)
|
||||
{
|
||||
j=abs(sr1[i]-find);
|
||||
w=i;
|
||||
}
|
||||
}
|
||||
cout<<sr1[w]<<endl;
|
||||
}
|
||||
}
|
||||
}
|
7
history_source/ccf 入门篇/U5/5.3.2.cpp
Normal file
7
history_source/ccf 入门篇/U5/5.3.2.cpp
Normal file
@ -0,0 +1,7 @@
|
||||
#include<iostream>
|
||||
using namespace std;
|
||||
int main()
|
||||
{
|
||||
cout<<"B";
|
||||
while(true);
|
||||
}
|
7
history_source/ccf 入门篇/U5/5.3.3.cpp
Normal file
7
history_source/ccf 入门篇/U5/5.3.3.cpp
Normal file
@ -0,0 +1,7 @@
|
||||
#include<iostream>
|
||||
using namespace std;
|
||||
int main()
|
||||
{
|
||||
cout<<"B";
|
||||
while(true);
|
||||
}
|
7
history_source/ccf 入门篇/U5/5.3.4.cpp
Normal file
7
history_source/ccf 入门篇/U5/5.3.4.cpp
Normal file
@ -0,0 +1,7 @@
|
||||
#include<iostream>
|
||||
using namespace std;
|
||||
int main()
|
||||
{
|
||||
cout<<"C";
|
||||
while(true);
|
||||
}
|
6
history_source/ccf 入门篇/U5/5.3.5.cpp
Normal file
6
history_source/ccf 入门篇/U5/5.3.5.cpp
Normal file
@ -0,0 +1,6 @@
|
||||
#include<cstdio>
|
||||
int main()
|
||||
{
|
||||
printf("14 23 23 48 56 56 58 95 99 99\n\n7\n");
|
||||
return 0;
|
||||
}
|
54
history_source/ccf 入门篇/U5/5.3.6.cpp
Normal file
54
history_source/ccf 入门篇/U5/5.3.6.cpp
Normal file
@ -0,0 +1,54 @@
|
||||
#include<iostream>
|
||||
#include<string>
|
||||
using namespace std;
|
||||
struct Type
|
||||
{
|
||||
int ID,score;
|
||||
};
|
||||
bool cmp(Type a,Type b)
|
||||
{
|
||||
if(a.score>b.score) return 1;
|
||||
if(a.score<b.score) return 0;
|
||||
return a.ID<b.ID;
|
||||
}
|
||||
template<class T_fsort>
|
||||
void fsort(T_fsort *left,T_fsort *right,bool (*cmp)(T_fsort a,T_fsort b),T_fsort *k)
|
||||
{
|
||||
if(right-left<=1) return;
|
||||
unsigned int len=right-left;
|
||||
fsort(left,left+len/2,cmp,k);
|
||||
fsort(left+len/2,right,cmp,k+len/2);
|
||||
int i=0,j=len/2,n=0;
|
||||
while(i<len/2&&j<len)
|
||||
{
|
||||
if(cmp(left[i],left[j])) k[n++]=left[i++];
|
||||
else k[n++]=left[j++];
|
||||
}
|
||||
while(i<len/2) k[n++]=left[i++];
|
||||
while(j<len) k[n++]=left[j++];
|
||||
for(int i=0;i<len;i++) left[i]=k[i];
|
||||
}
|
||||
int main()
|
||||
{
|
||||
int n,m;
|
||||
scanf("%d%d",&n,&m);
|
||||
Type a[n],k[n];
|
||||
for(int i=0;i<n;i++) scanf("%d%d",&a[i].ID,&a[i].score);
|
||||
fsort(a,a+n,cmp,k);
|
||||
int f=a[int(m*1.5)].score;
|
||||
printf("%d ",f);
|
||||
int sum=0;
|
||||
for(int i=0;a[i].score>=f;i++) sum++;
|
||||
printf("%d\n",sum);
|
||||
for(int i=0;i<sum;i++) printf("%d %d\n",a[i].ID,a[i].score);
|
||||
return 0;
|
||||
}
|
||||
/*
|
||||
6 3
|
||||
1000 90
|
||||
3239 88
|
||||
2390 95
|
||||
7231 84
|
||||
1005 95
|
||||
1001 88
|
||||
*/
|
55
history_source/ccf 入门篇/U5/5.3.7.cpp
Normal file
55
history_source/ccf 入门篇/U5/5.3.7.cpp
Normal file
@ -0,0 +1,55 @@
|
||||
#include<cstdio>
|
||||
using namespace std;
|
||||
struct T
|
||||
{
|
||||
int ID,ch,en,ma;
|
||||
};
|
||||
bool cmp(T a,T b)
|
||||
{
|
||||
if(a.ch+a.en+a.ma>b.ch+b.en+b.ma) return 1;
|
||||
if(a.ch+a.en+a.ma<b.ch+b.en+b.ma) return 0;
|
||||
if(a.ch>b.ch) return 1;
|
||||
if(a.ch<b.ch) return 0;
|
||||
return a.ID<b.ID;
|
||||
}
|
||||
template<class T_fsort>
|
||||
void fsort(T_fsort *left,T_fsort *right,bool (*cmp)(T_fsort a,T_fsort b),T_fsort *k)
|
||||
{
|
||||
if(right-left<=1) return;
|
||||
unsigned int len=right-left;
|
||||
fsort(left,left+len/2,cmp,k);
|
||||
fsort(left+len/2,right,cmp,k+len/2);
|
||||
int i=0,j=len/2,n=0;
|
||||
while(i<len/2&&j<len)
|
||||
{
|
||||
if(cmp(left[i],left[j])) k[n++]=left[i++];
|
||||
else k[n++]=left[j++];
|
||||
}
|
||||
while(i<len/2) k[n++]=left[i++];
|
||||
while(j<len) k[n++]=left[j++];
|
||||
for(int i=0;i<len;i++) left[i]=k[i];
|
||||
}
|
||||
int main()
|
||||
{
|
||||
int n;
|
||||
scanf("%d",&n);
|
||||
T a[n],k[n];
|
||||
for(int i=1;i<=n;i++)
|
||||
{
|
||||
scanf("%d%d%d",&a[i-1].ch,&a[i-1].ma,&a[i-1].en);
|
||||
a[i-1].ID=i;
|
||||
}
|
||||
fsort(a,a+n,cmp,k);
|
||||
for(int i=0;i<5;i++)
|
||||
printf("%d %d\n",a[i].ID,a[i].ch+a[i].ma+a[i].en);
|
||||
return 0;
|
||||
}
|
||||
/*
|
||||
6
|
||||
90 67 80
|
||||
87 66 91
|
||||
78 89 91
|
||||
88 99 77
|
||||
67 89 64
|
||||
78 89 98
|
||||
*/
|
39
history_source/ccf 入门篇/U5/5.3.8.cpp
Normal file
39
history_source/ccf 入门篇/U5/5.3.8.cpp
Normal file
@ -0,0 +1,39 @@
|
||||
#include<iostream>
|
||||
using namespace std;
|
||||
int main()//20 40 32 67 40 20 89 300 400 15
|
||||
{
|
||||
int n,m,x;
|
||||
while(true)
|
||||
{
|
||||
cin>>n;
|
||||
int sr[n];
|
||||
for(int i=0;i<n;i++) cin>>sr[i];
|
||||
for(int i=n-1;i>0;i--)
|
||||
{
|
||||
for(int j=0;j<i;j++)
|
||||
{
|
||||
if(sr[j]>sr[j+1]){
|
||||
x=sr[j];
|
||||
sr[j]=sr[j+1];
|
||||
sr[j+1]=x;
|
||||
}
|
||||
}
|
||||
}
|
||||
m=n;
|
||||
x=sr[0];
|
||||
for(int i=1;i<n;i++)
|
||||
{
|
||||
if(x==sr[i]) m--;
|
||||
x=sr[i];
|
||||
}
|
||||
cout<<m<<endl;
|
||||
x=sr[0];
|
||||
cout<<x<<" ";
|
||||
for(int i=1;i<n;i++)
|
||||
{
|
||||
if(x!=sr[i]) cout<<sr[i]<<" ";
|
||||
x=sr[i];
|
||||
}
|
||||
cout<<endl;
|
||||
}
|
||||
}
|
9
history_source/ccf 入门篇/U5/5.4.1.cpp
Normal file
9
history_source/ccf 入门篇/U5/5.4.1.cpp
Normal file
@ -0,0 +1,9 @@
|
||||
#include<cstdio>
|
||||
int main()
|
||||
{
|
||||
printf("TCCCCCCCCCCCCCCCCCCCCCCCCC\n\n");
|
||||
printf("I HAVE A DREAM.\n15\n\n\n");
|
||||
printf("f\nsof\n\n\n");
|
||||
printf("9.87654\n1.23457\n");
|
||||
return 0;
|
||||
}
|
52
history_source/ccf 入门篇/U5/5.4.2.cpp
Normal file
52
history_source/ccf 入门篇/U5/5.4.2.cpp
Normal file
@ -0,0 +1,52 @@
|
||||
#include<iostream>
|
||||
#include<vector>
|
||||
struct Word
|
||||
{
|
||||
int b;
|
||||
int size;
|
||||
};
|
||||
using namespace std;
|
||||
int main()
|
||||
{
|
||||
vector <char> sr;
|
||||
Word l;
|
||||
char in_;
|
||||
vector <Word> so;
|
||||
Word x;
|
||||
while(true)
|
||||
{
|
||||
sr.clear();
|
||||
so.clear();
|
||||
do
|
||||
{
|
||||
sr.push_back(' ');
|
||||
}
|
||||
while((sr[sr.size()-1]=getchar())!='.');
|
||||
sr.pop_back();
|
||||
l.b=0;
|
||||
l.size=0;
|
||||
so.push_back(l);
|
||||
for(int i=0;i<sr.size();i++)
|
||||
{
|
||||
if(sr[i]==' '){
|
||||
l.b=i+1;
|
||||
l.size=0;
|
||||
so.push_back(l);
|
||||
}
|
||||
else so[so.size()-1].size++;
|
||||
}
|
||||
for(int i=so.size()-1;i>0;i--)
|
||||
{
|
||||
for(int j=0;j<i;j++)
|
||||
{
|
||||
if(so[j].size>so[j+1].size){
|
||||
x=so[j];
|
||||
so[j]=so[j+1];
|
||||
so[j+1]=x;
|
||||
}
|
||||
}
|
||||
}
|
||||
for(int i=so[0].b;sr[i]!=' ';i++) cout<<sr[i];
|
||||
cout<<endl;
|
||||
}
|
||||
}
|
24
history_source/ccf 入门篇/U5/5.4.3.cpp
Normal file
24
history_source/ccf 入门篇/U5/5.4.3.cpp
Normal file
@ -0,0 +1,24 @@
|
||||
#include<iostream>
|
||||
using namespace std;
|
||||
int main()
|
||||
{
|
||||
char sr;
|
||||
long long ans,an;
|
||||
while(true)
|
||||
{
|
||||
ans=0;
|
||||
an=0;
|
||||
while(true)
|
||||
{
|
||||
sr=getchar();
|
||||
if(sr=='\n') break;
|
||||
if(sr=='+') {
|
||||
ans+=an;
|
||||
an=0;
|
||||
}
|
||||
else an=an*10+sr-'0';
|
||||
}
|
||||
ans+=an;
|
||||
cout<<ans<<endl;
|
||||
}
|
||||
}
|
26
history_source/ccf 入门篇/U5/5.4.4.cpp
Normal file
26
history_source/ccf 入门篇/U5/5.4.4.cpp
Normal file
@ -0,0 +1,26 @@
|
||||
#include<iostream>
|
||||
using namespace std;
|
||||
struct Sr
|
||||
{
|
||||
char sr[200];
|
||||
int size;
|
||||
};
|
||||
int main()
|
||||
{
|
||||
Sr sr1,sr2;
|
||||
int size;
|
||||
while(true)
|
||||
{
|
||||
sr1.size=0;
|
||||
sr2.size=0;
|
||||
while((sr1.sr[sr1.size]=getchar())!='\n') sr1.size++;
|
||||
while((sr2.sr[sr2.size]=getchar())!='\n') sr2.size++;
|
||||
size=(sr1.size<sr2.size)?sr1.size:sr2.size;
|
||||
for(int i=0;i<size;i++)
|
||||
{
|
||||
if(sr1.sr[i]==sr2.sr[i]) cout<<i+1<<" ";
|
||||
if(i!=0&&i%10==0) cout<<endl;
|
||||
}
|
||||
cout<<endl;
|
||||
}
|
||||
}
|
66
history_source/ccf 入门篇/U5/5.4.5.cpp
Normal file
66
history_source/ccf 入门篇/U5/5.4.5.cpp
Normal file
@ -0,0 +1,66 @@
|
||||
#include<iostream>
|
||||
#include<string>
|
||||
#include<cstdlib>
|
||||
using namespace std;
|
||||
int n;
|
||||
bool ish(string s)
|
||||
{
|
||||
for(int i=0,j=s.size()-1;i<j;i++,j--)
|
||||
if(s[i]!=s[j]) return 0;
|
||||
return 1;
|
||||
}
|
||||
char nums[16]={'0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f'};
|
||||
int hash_(char n)
|
||||
{
|
||||
if(n<='9') return n-'0';
|
||||
return n-'a'+10;
|
||||
}
|
||||
string plus_(string a,string b)
|
||||
{
|
||||
int x,j=0;
|
||||
string ans;
|
||||
if(a.size()<b.size())
|
||||
{
|
||||
string c=a;
|
||||
a=b;
|
||||
b=c;
|
||||
}
|
||||
int ai=a.size()-1,bi=b.size()-1;
|
||||
for(;bi>=0;ai--,bi--)
|
||||
{
|
||||
x=hash_(a[ai])+hash_(b[bi])+j;
|
||||
ans=nums[x%n]+ans;
|
||||
j=x/n;
|
||||
}
|
||||
for(;ai>=0;ai--)
|
||||
{
|
||||
x=hash_(a[ai])+j;
|
||||
ans=nums[x%n]+ans;
|
||||
j=x/n;
|
||||
}
|
||||
if(j>0) ans="1"+ans;
|
||||
return ans;
|
||||
}
|
||||
string dao(string a)
|
||||
{
|
||||
string ans;
|
||||
for(int i=a.size()-1;i>=0;i--) ans+=a[i];
|
||||
return ans;
|
||||
}
|
||||
int main()
|
||||
{
|
||||
string s;
|
||||
cin>>n>>s;
|
||||
for(int i=0;i<=30;i++)
|
||||
{
|
||||
if(ish(s))
|
||||
{
|
||||
cout<<i<<endl;
|
||||
return 0;
|
||||
}
|
||||
if(i==30) break;
|
||||
s=plus_(s,dao(s));
|
||||
}
|
||||
cout<<"impossible"<<endl;
|
||||
return 0;
|
||||
}
|
38
history_source/ccf 入门篇/U5/5.4.6.cpp
Normal file
38
history_source/ccf 入门篇/U5/5.4.6.cpp
Normal file
@ -0,0 +1,38 @@
|
||||
#include<iostream>
|
||||
#include<vector>
|
||||
using namespace std;
|
||||
int main()//0-670-82162-4
|
||||
{
|
||||
vector <char> sr;
|
||||
int ans,a;
|
||||
while(true)
|
||||
{
|
||||
sr.clear();
|
||||
sr.resize(13);
|
||||
for(int i=0;i<13;i++) sr[i]=getchar();
|
||||
ans=0;
|
||||
a=1;
|
||||
for(int i=0;i<12;i++)
|
||||
{
|
||||
if(sr[i]!='-') {ans=ans+(sr[i]-'0')*a;a++;}
|
||||
}
|
||||
if(ans%11<10)
|
||||
{
|
||||
if(ans%11==sr[12]-'0') cout<<"Right"<<endl;
|
||||
else
|
||||
{
|
||||
for(int i=0;i<12;i++) cout<<sr[i];
|
||||
cout<<ans%11<<endl;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if(sr[12]=='X') cout<<"Right"<<endl;
|
||||
else
|
||||
{
|
||||
for(int i=0;i<12;i++) cout<<sr[i];
|
||||
cout<<"X"<<endl;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
22
history_source/ccf 入门篇/U5/5.4.7.cpp
Normal file
22
history_source/ccf 入门篇/U5/5.4.7.cpp
Normal file
@ -0,0 +1,22 @@
|
||||
#include<iostream>
|
||||
#include<string>
|
||||
using namespace std;
|
||||
int main()
|
||||
{
|
||||
string password,sr;
|
||||
char sr2;
|
||||
password="NOIP@CCF";
|
||||
while(true)
|
||||
{
|
||||
cout<<">>> ";
|
||||
cin>>sr2;
|
||||
if(sr2=='N') break;
|
||||
else
|
||||
{
|
||||
cin>>sr;
|
||||
if(sr==password) {cout<<"Succrss";break;}
|
||||
else cout<<"Sorry"<<endl;
|
||||
}
|
||||
}
|
||||
if(sr==password) while(true);
|
||||
}
|
13
history_source/ccf 入门篇/U5/5.5.1.cpp
Normal file
13
history_source/ccf 入门篇/U5/5.5.1.cpp
Normal file
@ -0,0 +1,13 @@
|
||||
#include<cstdio>
|
||||
int main()
|
||||
{
|
||||
printf("1 2 3 4 5 6 7 8 9\n");
|
||||
printf("18 17 16 15 14 13 12 11 10\n");
|
||||
printf("19 20 21 22 23 24 25 26 27\n");
|
||||
printf("36 35 34 33 32 31 30 0 0\n");
|
||||
printf("37 38 39 40 41 42 43 44 45\n");
|
||||
printf("54 53 52 51 50 0 0 0 0\n");
|
||||
printf("55 56 57 58 59 60 61 62 63\n");
|
||||
printf("72 71 70 0 0 0 0 0 0\n");
|
||||
return 0;
|
||||
}
|
14
history_source/ccf 入门篇/U5/5.5.2.cpp
Normal file
14
history_source/ccf 入门篇/U5/5.5.2.cpp
Normal file
@ -0,0 +1,14 @@
|
||||
#include<iostream>
|
||||
using namespace std;
|
||||
int main()
|
||||
{
|
||||
int sr[4][4],ts,fs;
|
||||
while(true)
|
||||
{
|
||||
for(int i=0;i<4;i++) for(int j=0;j<4;j++) cin>>sr[j][i];
|
||||
ts=fs=0;
|
||||
for(int i=0;i<4;i++) fs+=sr[i][i];
|
||||
for(int i=0;i<4;i++) ts+=sr[3-i][i];
|
||||
cout<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD>: "<<fs<<endl<<"<EFBFBD><EFBFBD><EFBFBD><EFBFBD>-<2D><><EFBFBD><EFBFBD>: "<<ts<<endl;
|
||||
}
|
||||
}
|
42
history_source/ccf 入门篇/U5/5.5.3.cpp
Normal file
42
history_source/ccf 入门篇/U5/5.5.3.cpp
Normal file
@ -0,0 +1,42 @@
|
||||
#include<cstdio>
|
||||
int main()
|
||||
{
|
||||
int n;
|
||||
scanf("%d",&n);
|
||||
int Map[n][n]={0},x=0,y=0,i=1,j;
|
||||
for(j=0;j<n*n;j++)
|
||||
{
|
||||
if(i&1)
|
||||
{
|
||||
if(x>=0)
|
||||
{
|
||||
if(y<n) Map[x--][y++]=j+1;
|
||||
else x+=2,y--,i++,Map[x++][y--]=j+1;
|
||||
}
|
||||
else
|
||||
{
|
||||
if(y<n) x++,i++,Map[x++][y--]=j+1;
|
||||
else x+=2,y--,i++,Map[x++][y--]=j+1;
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
if(y>=0)
|
||||
{
|
||||
if(x<n) Map[x++][y--]=j+1;
|
||||
else y+=2,x--,i++,Map[x--][y++]=j+1;
|
||||
}
|
||||
else
|
||||
{
|
||||
if(x<n) y++,i++,Map[x--][y++]=j+1;
|
||||
else y+=2,x--,i++,Map[x--][y++]=j+1;
|
||||
}
|
||||
}
|
||||
}
|
||||
for(i=0;i<n;i++)
|
||||
{
|
||||
for(j=0;j<n;j++) printf("%d ",Map[j][i]);
|
||||
printf("\n");
|
||||
}
|
||||
return 0;
|
||||
}
|
54
history_source/ccf 入门篇/U5/5.5.4.cpp
Normal file
54
history_source/ccf 入门篇/U5/5.5.4.cpp
Normal file
@ -0,0 +1,54 @@
|
||||
#include<iostream>
|
||||
#define MAXN 20
|
||||
using namespace std;
|
||||
int huan[MAXN][MAXN];
|
||||
int main()
|
||||
{
|
||||
int n,x,y;
|
||||
ios::sync_with_stdio(0);
|
||||
cin>>n;
|
||||
huan[n/2][0]=1;
|
||||
x=n/2;
|
||||
y=0;
|
||||
for(int i=2;i<=n*n;i++)
|
||||
{
|
||||
if(y==0&&x!=n-1)
|
||||
{
|
||||
huan[x+1][n-1]=i;
|
||||
x=x+1;
|
||||
y=n-1;
|
||||
}else if(x==n-1&&y!=0)
|
||||
{
|
||||
huan[0][y-1]=i;
|
||||
x=0;
|
||||
y=y-1;
|
||||
}else if(y==0&&x==n-1)
|
||||
{
|
||||
huan[x][y+1]=i;
|
||||
x=x;
|
||||
y=y+1;
|
||||
}else
|
||||
{
|
||||
if(huan[x+1][y-1]==0)
|
||||
{
|
||||
huan[x+1][y-1]=i;
|
||||
x=x+1;
|
||||
y=y-1;
|
||||
}
|
||||
else
|
||||
{
|
||||
huan[x][y+1]=i;
|
||||
x=x;
|
||||
y=y+1;
|
||||
}
|
||||
}
|
||||
}
|
||||
for(int i=0;i<n;i++)
|
||||
{
|
||||
for(int j=0;j<n;j++) cout<<huan[j][i]<<" ";
|
||||
cout<<"\n";
|
||||
}
|
||||
cout<<flush;
|
||||
return 0;
|
||||
}
|
||||
|
33
history_source/ccf 入门篇/U5/5.5.5.cpp
Normal file
33
history_source/ccf 入门篇/U5/5.5.5.cpp
Normal file
@ -0,0 +1,33 @@
|
||||
#include<iostream>
|
||||
using namespace std;
|
||||
int sr[5][5];
|
||||
bool pan(int x,int y)
|
||||
{
|
||||
int text=sr[x][y];
|
||||
for(int i=0;i<5;i++) if(sr[i][y]>text) return 0;
|
||||
for(int i=0;i<5;i++) if(sr[x][i]<text) return 0;
|
||||
return 1;
|
||||
}
|
||||
int main()
|
||||
{
|
||||
bool find;
|
||||
while(true)
|
||||
{
|
||||
for(int i=0;i<5;i++) for(int j=0;j<5;j++) cin>>sr[j][i];
|
||||
find=1;
|
||||
for(int i=0;i<5;i++)
|
||||
{
|
||||
for(int j=0;j<5;j++)
|
||||
{
|
||||
if(pan(j,i))
|
||||
{
|
||||
cout<<i+1<<" "<<j+1<<" "<<sr[j][i]<<endl;
|
||||
find=0;
|
||||
break;
|
||||
}
|
||||
}
|
||||
if(!find) break;
|
||||
}
|
||||
if(find) cout<<"not find"<<endl;
|
||||
}
|
||||
}
|
46
history_source/ccf 入门篇/U5/5.5.6.cpp
Normal file
46
history_source/ccf 入门篇/U5/5.5.6.cpp
Normal file
@ -0,0 +1,46 @@
|
||||
#include<iostream>
|
||||
using namespace std;
|
||||
int n;
|
||||
bool sr[100][100];
|
||||
bool pan()
|
||||
{
|
||||
int addx=0,addy=0;
|
||||
for(int y=0;y<n;y++)
|
||||
{
|
||||
for(int x=0;x<n;x++) if(sr[x][y]) addx++;
|
||||
if(addx%2==1) return 0;
|
||||
addx=0;
|
||||
}
|
||||
for(int x=0;x<n;x++)
|
||||
{
|
||||
for(int y=0;y<n;y++) if(sr[x][y]) addy++;
|
||||
if(addy%2==1) return 0;
|
||||
addy=0;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
int main()
|
||||
{
|
||||
while(true)
|
||||
{
|
||||
cin>>n;
|
||||
for(int i=0;i<n;i++) for(int j=0;j<n;j++) cin>>sr[i][j];
|
||||
if(pan()) cout<<"OK"<<endl;
|
||||
else
|
||||
{
|
||||
int x=0,y=0;
|
||||
for(y=0;y<n;y++)
|
||||
{
|
||||
for(x=0;x<n;x++)
|
||||
{
|
||||
sr[x][y]=!sr[x][y];
|
||||
if(pan())break;
|
||||
else sr[x][y]=!sr[x][y];
|
||||
}
|
||||
if(pan())break;
|
||||
}
|
||||
if(pan())cout<<"<EFBFBD><EFBFBD>"<<y+1<<"<EFBFBD><EFBFBD>,"<<"<EFBFBD><EFBFBD>"<<x+1<<"<EFBFBD><EFBFBD>"<<endl;
|
||||
else cout<<"Corrupt"<<endl;
|
||||
}
|
||||
}
|
||||
}
|
18
history_source/ccf 入门篇/U5/5.5.7.cpp
Normal file
18
history_source/ccf 入门篇/U5/5.5.7.cpp
Normal file
@ -0,0 +1,18 @@
|
||||
#include<iostream>
|
||||
using namespace std;
|
||||
int main()
|
||||
{
|
||||
int n,m;
|
||||
while(true)
|
||||
{
|
||||
cin>>n>>m;
|
||||
int picture[m][n];
|
||||
for(int i=0;i<n;i++) for(int j=0;j<m;j++) cin>>picture[j][i];
|
||||
cout<<endl;
|
||||
for(int i=0;i<m;i++)
|
||||
{
|
||||
for(int j=0;j<n;j++) cout<<picture[i][n-1-j]<<" ";
|
||||
cout<<endl;
|
||||
}
|
||||
}
|
||||
}
|
30
history_source/ccf 入门篇/U5/5.5.8.cpp
Normal file
30
history_source/ccf 入门篇/U5/5.5.8.cpp
Normal file
@ -0,0 +1,30 @@
|
||||
#include<iostream>
|
||||
using namespace std;
|
||||
int n,m,k,a[100][100],b[100][100],c[100][100];
|
||||
int add(int x,int y)
|
||||
{
|
||||
int an=0;
|
||||
for(int i=0;i<m;i++) an+=a[i][y]*b[x][i];
|
||||
return an;
|
||||
}
|
||||
int main()
|
||||
{
|
||||
while(true)
|
||||
{
|
||||
cin>>n>>m>>k;
|
||||
for(int i=0;i<n;i++) for(int j=0;j<m;j++) cin>>a[j][i];
|
||||
for(int i=0;i<m;i++) for(int j=0;j<k;j++) cin>>b[j][i];
|
||||
for(int i=0;i<n;i++)
|
||||
{
|
||||
for(int j=0;j<k;j++)
|
||||
{
|
||||
c[j][i]=add(j,i);
|
||||
}
|
||||
}
|
||||
for(int i=0;i<n;i++)
|
||||
{
|
||||
for(int j=0;j<k;j++) cout<<c[j][i]<<" ";
|
||||
cout<<endl;
|
||||
}
|
||||
}
|
||||
}
|
70
history_source/ccf 入门篇/U5/5.6.1.cpp
Normal file
70
history_source/ccf 入门篇/U5/5.6.1.cpp
Normal file
@ -0,0 +1,70 @@
|
||||
#include<iostream>
|
||||
using namespace std;
|
||||
#include<string>
|
||||
struct passengers
|
||||
{
|
||||
string sex;
|
||||
double high;
|
||||
};
|
||||
int main()
|
||||
{
|
||||
passengers sr[40];
|
||||
passengers li;
|
||||
bool li2;
|
||||
int n;
|
||||
while(true)
|
||||
{
|
||||
cin>>n;
|
||||
for(int i=0;i<n;i++) cin>>sr[i].sex>>sr[i].high;
|
||||
do
|
||||
{
|
||||
li2=0;
|
||||
for(int i=0;i<n-1;i++)
|
||||
{
|
||||
if(sr[i].sex=="female"&&sr[i+1].sex=="male")
|
||||
{
|
||||
li2=1;
|
||||
li=sr[i];
|
||||
sr[i]=sr[i+1];
|
||||
sr[i+1]=li;
|
||||
}
|
||||
}
|
||||
}
|
||||
while(li2);
|
||||
int male;
|
||||
for(male=0;sr[male].sex=="male";male++);
|
||||
male--;
|
||||
do
|
||||
{
|
||||
li2=0;
|
||||
for(int i=0;i<male;i++)
|
||||
{
|
||||
if(sr[i].high>sr[i+1].high)
|
||||
{
|
||||
li2=1;
|
||||
li=sr[i];
|
||||
sr[i]=sr[i+1];
|
||||
sr[i+1]=li;
|
||||
}
|
||||
}
|
||||
}
|
||||
while(li2);
|
||||
do
|
||||
{
|
||||
li2=0;
|
||||
for(int i=male+1;i<n-1;i++)
|
||||
{
|
||||
if(sr[i].high<sr[i+1].high)
|
||||
{
|
||||
li2=1;
|
||||
li=sr[i];
|
||||
sr[i]=sr[i+1];
|
||||
sr[i+1]=li;
|
||||
}
|
||||
}
|
||||
}
|
||||
while(li2);
|
||||
for(int i=0;i<n;i++) cout<<sr[i].high<<" ";
|
||||
cout<<endl;
|
||||
}
|
||||
}
|
44
history_source/ccf 入门篇/U5/5.6.2.cpp
Normal file
44
history_source/ccf 入门篇/U5/5.6.2.cpp
Normal file
@ -0,0 +1,44 @@
|
||||
#include<iostream>
|
||||
#include<vector>
|
||||
using namespace std;
|
||||
int d(int a)
|
||||
{
|
||||
int add=a;
|
||||
do
|
||||
{
|
||||
add+=a%10;
|
||||
a/=10;
|
||||
}
|
||||
while(a>0);
|
||||
return add;
|
||||
}
|
||||
bool find(int sr)
|
||||
{
|
||||
for(int i=1;i<=sr;i++) if(d(i)==sr) return 1;
|
||||
return 0;
|
||||
}
|
||||
int main()
|
||||
{
|
||||
int n,k,sr[5000],num,j;
|
||||
vector <int> so;
|
||||
while(true)
|
||||
{
|
||||
so.clear();
|
||||
num=0;
|
||||
cin>>n>>k;
|
||||
for(int i=0;i<k;i++) cin>>sr[i];
|
||||
for(int i=1;i<=n;i++) if(!find(i)) num++;
|
||||
cout<<num<<endl;
|
||||
j=0;
|
||||
for(int i=1;i>0;i++)
|
||||
{
|
||||
if(!find(i))
|
||||
{
|
||||
so.push_back(i);
|
||||
}
|
||||
if(so.size()>=sr[k-1]) break;
|
||||
}
|
||||
for(int i=0;i<k;i++) cout<<so[sr[i]-1]<<" ";
|
||||
cout<<endl;
|
||||
}
|
||||
}
|
23
history_source/ccf 入门篇/U5/5.6.3.cpp
Normal file
23
history_source/ccf 入门篇/U5/5.6.3.cpp
Normal file
@ -0,0 +1,23 @@
|
||||
#include<iostream>
|
||||
using namespace std;
|
||||
int main()
|
||||
{
|
||||
int answer,fm,fz,m,n,sr[100][100],li;
|
||||
while(true)
|
||||
{
|
||||
cin>>m>>n;
|
||||
for(int i=0;i<m;i++) for(int j=0;j<n;j++) cin>>sr[j][i];
|
||||
fm=m*n;
|
||||
fz=0;
|
||||
for(int i=0;i<m;i++)
|
||||
{
|
||||
for(int j=0;j<n;j++)
|
||||
{
|
||||
cin>>li;
|
||||
if(li==sr[j][i]) fz++;
|
||||
}
|
||||
}
|
||||
answer=fz*10000/fm;
|
||||
cout<<answer/100.0<<endl;
|
||||
}
|
||||
}
|
38
history_source/ccf 入门篇/U5/5.6.4.cpp
Normal file
38
history_source/ccf 入门篇/U5/5.6.4.cpp
Normal file
@ -0,0 +1,38 @@
|
||||
#include<iostream>
|
||||
using namespace std;
|
||||
int main()
|
||||
{
|
||||
int n,m,add;
|
||||
char sr[100][100];
|
||||
while(true)
|
||||
{
|
||||
cin>>n>>m;
|
||||
for(int i=0;i<n;i++) for(int j=0;j<m;j++) cin>>sr[j][i];
|
||||
for(int i=0;i<n;i++)
|
||||
{
|
||||
for(int j=0;j<m;j++)
|
||||
{
|
||||
if(sr[j][i]=='?')
|
||||
{
|
||||
add=0;
|
||||
if(j>0&&i>0&&sr[j-1][i-1]=='*') add++;
|
||||
if(j>0&&i<n-1&&sr[j-1][i+1]=='*') add++;
|
||||
if(j<m-1&&i>0&&sr[j+1][i-1]=='*') add++;
|
||||
if(j<m-1&&i<n-1&&sr[j+1][i+1]=='*') add++;
|
||||
if(j>0&&sr[j-1][i]=='*') add++;
|
||||
if(j<m-1&&sr[j+1][i]=='*') add++;
|
||||
if(i>0&&sr[j][i-1]=='*') add++;
|
||||
if(i<n-1&&sr[j][i+1]=='*') add++;
|
||||
sr[j][i]='0'+add;
|
||||
}
|
||||
}
|
||||
}
|
||||
cout<<endl;
|
||||
for(int i=0;i<n;i++)
|
||||
{
|
||||
for(int j=0;j<m;j++) cout<<sr[j][i];
|
||||
cout<<endl;
|
||||
}
|
||||
cout<<endl;
|
||||
}
|
||||
}
|
28
history_source/ccf 入门篇/U5/5.6.6.cpp
Normal file
28
history_source/ccf 入门篇/U5/5.6.6.cpp
Normal file
@ -0,0 +1,28 @@
|
||||
#include<iostream>
|
||||
#include<string>
|
||||
using namespace std;
|
||||
string p,q,r;
|
||||
long long ten(string sr,int j)
|
||||
{
|
||||
long long add=0;
|
||||
for(int i=0;i<sr.size();i++)
|
||||
{
|
||||
add*=j;
|
||||
add+=sr[i]-'0';
|
||||
}
|
||||
return add;
|
||||
}
|
||||
int main()
|
||||
{
|
||||
int b;
|
||||
while(true)
|
||||
{
|
||||
cin>>p>>q>>r;
|
||||
for(b=2;b<=16;b++)
|
||||
{
|
||||
if(ten(p,b)*ten(q,b)==ten(r,b)) break;
|
||||
}
|
||||
if(ten(p,b)*ten(q,b)==ten(r,b)) cout<<b<<endl;
|
||||
else cout<<0<<endl;
|
||||
}
|
||||
}
|
77
history_source/ccf 入门篇/U5/5.6.7.cpp
Normal file
77
history_source/ccf 入门篇/U5/5.6.7.cpp
Normal file
@ -0,0 +1,77 @@
|
||||
#include<iostream>
|
||||
using namespace std;
|
||||
int main()
|
||||
{
|
||||
int x,y,n;
|
||||
char sr[100][100];
|
||||
bool jl[100][100];
|
||||
while(true)
|
||||
{
|
||||
cin>>y>>x>>n;
|
||||
for(int i=0;i<100;i++) for(int j=0;j<100;j++) sr[j][i]='0';
|
||||
for(int i=0;i<y;i++) for(int j=0;j<x;j++) cin>>sr[j][i];
|
||||
for(int a=0;a<n;a++)
|
||||
{
|
||||
for(int ii=0;ii<100;ii++) for(int jj=0;jj<100;jj++) jl[jj][ii]=1;
|
||||
for(int i=0;i<y;i++)
|
||||
{
|
||||
for(int j=0;j<x-1;j++)
|
||||
{
|
||||
if((sr[j][i]!=sr[j+1][i])&&jl[j][i]&&jl[j+1][i])
|
||||
{
|
||||
switch(sr[j][i])
|
||||
{
|
||||
case 'R':
|
||||
if(sr[j+1][i]=='S') sr[j+1][i]='R';
|
||||
else sr[j][i]='P';
|
||||
jl[j][i]=jl[j+1][i]=0;
|
||||
break;
|
||||
case 'S':
|
||||
if(sr[j+1][i]=='P') sr[j+1][i]='S';
|
||||
else sr[j][i]='R';
|
||||
jl[j][i]=jl[j+1][i]=0;
|
||||
break;
|
||||
case 'P':
|
||||
if(sr[j+1][i]=='R') sr[j+1][i]='P';
|
||||
else sr[j][i]='S';
|
||||
jl[j][i]=jl[j+1][i]=0;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
for(int j=0;j<x;j++)
|
||||
{
|
||||
for(int i=0;i<y-1;i++)
|
||||
{
|
||||
if((sr[j][i]!=sr[j][i+1])&&jl[j][i]&&jl[j][i+1])
|
||||
{
|
||||
switch(sr[j][i])
|
||||
{
|
||||
case 'R':
|
||||
if(sr[j][i+1]=='S') sr[j][i+1]='R';
|
||||
else sr[j][i]='P';
|
||||
jl[j][i]=jl[j][i+1]=0;
|
||||
break;
|
||||
case 'S':
|
||||
if(sr[j][i+1]=='P') sr[j][i+1]='S';
|
||||
else sr[j][i]='R';
|
||||
jl[j][i]=jl[j][i+1]=0;
|
||||
break;
|
||||
case 'P':
|
||||
if(sr[j][i+1]=='R') sr[j][i+1]='P';
|
||||
else sr[j][i]='S';
|
||||
jl[j][i]=jl[j][i+1]=0;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
for(int i=0;i<y;i++)
|
||||
{
|
||||
for(int j=0;j<x;j++) cout<<sr[j][i];
|
||||
cout<<endl;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user