L1-041 寻找250 (10分)
https://pintia.cn/problem-sets/994805046380707840/problems/994805089657536512
#include <cstdio> #include <iostream> using namespace std; int main() { int n,flag=0; int num=1; int value; while(scanf("%d",&n)!=EOF){ //这里还可以写成①cin>>n ②~scanf("%d",&n) if(n==250&&flag==0) { value=num; flag=1; } num++; } cout<<value<<endl; return 0; }
L1-039 古风排版 (20分)
https://pintia.cn/problem-sets/994805046380707840/problems/994805091888906240
#include <cstdio> #include <iostream> #include <cstring> #include <string> using namespace std; int main() { int n,len=0,i,x,j; char chr[1100]; memset(chr,0,sizeof(chr)); cin>>n; getchar(); //这一步不要忘了 while((chr[len]=getchar())!=' ') {len++;} if(len%n!=0) { for(i=0,x=len;i<n-len%n;i++) chr[x++]=' ';} else x=len; for(i=0;i<n;i++) { for(j=x/n-1;j>=0;j--) { printf("%c",chr[j*n+i]); } cout<<endl; } return 0; }
L1-032 Left-pad (20分)
https://pintia.cn/problem-sets/994805046380707840/problems/994805100684361728
法一:
#include <iostream> #include <algorithm> #include <cmath> #include <cstdio> #include <cstring> #include <string> using namespace std; int main() { int n,len; int i,j,k; char chr; char str[40000]; //开始定义为1000,两个测试点过不了 cin>>n; cin>>chr; getchar(); //这句话老忘!!! cin.getline(str,40000); len=strlen(str); if(len>=n) { for(i=len-n;i<len;i++) printf("%c",str[i]); cout<<endl; } else if(len<n) { for(i=0;i<n-len;i++) printf("%c",chr); puts(str); } return 0; }
法二:
#include<cstring> #include<iostream> #include<algorithm> using namespace std; int main() { string s; char t; int n; cin >> n >> t; getchar(); getline(cin,s); reverse(s.begin(), s.end()); s.resize(n,t);//将字符串重新分配大小,如果过大使用指定的字符填充 reverse(s.begin(), s.end()); cout << s << endl; return 0; }
string.reverse()函数用法:https://blog.csdn.net/qq_40828914/article/details/81138117
string.resize()函数用法:resize调整容器中有效数据区域的尺寸,如果尺寸变小,原来数据多余的截掉。若尺寸变大,不够的数据用该函数第二个参数填充,影响size。
L1-028 判断素数 (10分)
https://pintia.cn/problem-sets/994805046380707840/problems/994805106325700608
注意一下特判a[i]为1情况,此时为素数;
#include <iostream> #include <algorithm> #include <cstdio> #include <cmath> using namespace std; int main() { int n; int i,j,k,a[12]; cin>>n; for(i=0;i<n;i++) cin>>a[i]; for(i=0;i<n;i++) { if(a[i]==1) puts("No"); else{ k=(int)sqrt((double)a[i]); for(j=2;j<=k;j++) if(a[i]%j==0) break; if(j>k) puts("Yes"); else puts("No"); } } return 0; }