-
/* * @Description: Hello World * @version: * @Author: * @Date: 2021-03-23 20:16:30 * @LastEditors: Please set LastEditors * @LastEditTime: 2021-03-23 20:17:15 */ #include <iostream> using namespace std; int main() { cout << "Hello World!" << endl; return 0; }
-
/* * @Description: 打印沙漏 * @version: * @Author: * @Date: 2021-03-23 10:47:47 * @LastEditors: Please set LastEditors * @LastEditTime: 2021-03-23 11:45:17 */ #include <iostream> #include <string> using namespace std; int main(void) { int n; char signal; cin >> n >> signal; if (n == 0) { cout << 0 << endl; // getchar(); return 0; } int sum = 0, count = 1; for (int i = 3;; i += 2) { if (((sum + i) << 1) > n - 1) { break; } sum += i; count++; } // cout << count << endl; string str; sum = 0; for (int i = count; i > 0; i--) { str.erase(str.begin(), str.end()); str.insert(str.begin(), count - i, ' '); str.insert(str.end(), i * 2 - 1, signal); sum += i * 2 - 1; // str.insert(str.end(), count - i, ' '); cout << str << endl; } for (int i = 1; i < count; i++) { str.erase(str.begin(), str.end()); str.insert(str.begin(), count - i - 1, ' '); str.insert(str.end(), i * 2 + 1, signal); sum += i * 2 + 1; // str.insert(str.end(), count - i - 1, ' '); cout << str << endl; } cout << n - sum << endl; return 0; }
-
/* * @Description: 个位数统计 * @version: * @Author: * @Date: 2021-03-23 11:45:35 * @LastEditors: Please set LastEditors * @LastEditTime: 2021-03-23 12:21:58 */ #include <iostream> #include <map> #include <string> using namespace std; int main(void) { string num; cin >> num; map<char, int> m; map<char, int>::iterator it; for (int i = 0; i < num.length(); i++) { it = m.find(num[i]); if (it == m.end()) m[num[i]] = 1; else (it->second)++; } for (it = m.begin(); it != m.end(); it++) cout << it->first << ":" << it->second << endl; return 0; }
-
/* * @Description: 计算摄氏温度 * @version: * @Author: * @Date: 2021-03-23 12:25:53 * @LastEditors: Please set LastEditors * @LastEditTime: 2021-03-23 12:28:55 */ #include <iostream> using namespace std; int main(void) { int num; cin >> num; cout << "Celsius = " << 5 * (num - 32) / 9 << endl; system("pause"); return 0; }
-
/* * @Description: 考试座位号 * @version: * @Author: * @Date: 2021-03-23 12:33:55 * @LastEditors: Please set LastEditors * @LastEditTime: 2021-03-23 12:44:03 */ #include <iostream> #include <unordered_map> #include <string> using namespace std; struct student { string id; int seat; }; int main(void) { unordered_map<int, struct student> m; int n; cin >> n; string id; int try_seat, seat; while (n--) { cin >> id >> try_seat >> seat; struct student temp; temp.id = id; temp.seat = seat; m[try_seat] = temp; } cin >> n; int t; while (n--) { cin >> t; cout << m[t].id << " " << m[t].seat << endl; } system("pause"); return 0; }
-
-
/* * @Description: 整数读音 * @version: * @Author: * @Date: 2021-03-23 15:43:21 * @LastEditors: Please set LastEditors * @LastEditTime: 2021-03-23 16:14:55 */ #include <iostream> #include <unordered_map> #include <string> using namespace std; int main(void) { unordered_map<char, string> m; m['0'] = "ling"; m['1'] = "yi"; m['2'] = "er"; m['3'] = "san"; m['4'] = "si"; m['5'] = "wu"; m['6'] = "liu"; m['7'] = "qi"; m['8'] = "ba"; m['9'] = "jiu"; m['-'] = "fu"; string str; cin >> str; int i; for (i = 0; i < str.length() - 1; i++) { cout << m[str[i]] << " "; } cout << m[str[i]] << endl; system("pause"); return 0; }
-
/* * @Description: 整数段求和 * @version: * @Author: * @Date: 2021-03-23 15:51:05 * @LastEditors: Please set LastEditors * @LastEditTime: 2021-03-23 16:15:06 */ #include <iostream> #include <stdio.h> using namespace std; int main() { int a, b; cin >> a >> b; int count = 0, sum = 0; for (int i = a; i <= b; i++) { printf("%5d", i); count++; sum += i; if (count % 5 == 0) cout << endl; } cout << endl; cout << "sum = " << sum << endl; system("pause"); return 0; }
-
/* * @Description: N个分数求和 * @version: 1.0 * @Author: * @Date: 2021-03-23 16:15:15 * @LastEditors: Please set LastEditors * @LastEditTime: 2021-03-23 18:41:56 */ // TODO:未解决问题:浮点错误 #include <iostream> #include <vector> #include <stdio.h> using namespace std; long gcd(long m, long n) { long r = m % n; while (r) { m = n; n = r; r = m % n; } return n; } long getMaximumMaleMultiply(long m, long n) { long num = gcd(m, n); return num * (m / num) * (n / num); } int main() { int n; cin >> n; vector<long> zi, mu; long num1, num2; for (int i = 0; i < n; i++) { scanf("%ld/%ld", &num1, &num2); if(num2==0) return 0; zi.push_back(num1); mu.push_back(num2); } long MaximumMaleMultiply = getMaximumMaleMultiply(mu[0], mu[1]); for (int i = 2; i < mu.size(); i++) { MaximumMaleMultiply = getMaximumMaleMultiply(MaximumMaleMultiply, mu[i]); } if(MaximumMaleMultiply==0) return 0; long sum = 0L; for (int i = 0; i < zi.size(); i++) { zi[i] = MaximumMaleMultiply / mu[i] * zi[i]; sum += zi[i]; } num1 = gcd(MaximumMaleMultiply, sum); sum /= num1; MaximumMaleMultiply /= num1; num1 = sum / MaximumMaleMultiply; if (num1) cout << num1; sum -= num1 * MaximumMaleMultiply; if (num1 && sum) cout << " " << sum << "/" << MaximumMaleMultiply << endl; else if ((!num1) && sum) cout << sum << "/" << MaximumMaleMultiply << endl; else cout << endl; system("pause"); return 0; }
-
/* * @Description: 整数排序 * @version: * @Author: * @Date: 2021-03-23 18:42:24 * @LastEditors: Please set LastEditors * @LastEditTime: 2021-03-23 18:49:57 */ #include <iostream> #include <vector> #include <algorithm> #define N 3 using namespace std; int main() { vector<int> v; int num; for (int i = 0; i < N; i++) { cin >> num; v.push_back(num); } sort(v.begin(), v.end()); for (int i = 0; i < N - 1; i++) { cout << v[i] << "->"; } cout << v[N - 1] << endl; system("pause"); return 0; }
-
/* * @Description: 字符串相减 * @version: * @Author: * @Date: 2021-03-23 18:52:35 * @LastEditors: Please set LastEditors * @LastEditTime: 2021-03-23 19:13:04 */ #include <iostream> #include <string> using namespace std; int main(void) { string a, b; // NOTE:解决空格结束问题 getline(cin, a, '\n'); getline(cin, b, '\n'); for (int i = 0; i < a.size(); i++) { // NOTE:可以查找字符或字符串,第二个参数是开始查找的位置,返回出现的位置或string::npos if (b.find(a[i]) != string::npos) continue; else cout << a[i]; } system("pause"); return 0; }
-
/* * @Description: 计算2的幂 * @version: * @Author: * @Date: 2021-03-23 19:14:24 * @LastEditors: Please set LastEditors * @LastEditTime: 2021-03-23 19:20:13 */ #include <iostream> using namespace std; long long fast_pow(long long x, long long n) { if (n == 1) return x; else if (n == 0) return 1LL; long res = 1LL; if (n & 1) res *= x; long long half = fast_pow(x, n >>= 1); res = res * half * half; return res; } int main(void) { int n; cin >> n; cout << "2^" << n << " = " << fast_pow(2, n) << endl; system("pause"); return 0; }
-
/* * @Description: 阶乘和 * @version: * @Author: * @Date: 2021-03-23 19:22:52 * @LastEditors: Please set LastEditors * @LastEditTime: 2021-03-23 19:26:49 */ #include <iostream> using namespace std; long fac(int n); int main() { long sum = 0L; int n; cin >> n; for (int i = 1; i <= n; i++) { sum += fac(i); } cout << sum << endl; system("pause"); return 0; } long fac(int n) { long res = 1L; for (int i = 2; i <= n; i++) { res *= i; } return res; }
-
/* * @Description: 简单题 * @version: * @Author: * @Date: 2021-03-23 19:27:22 * @LastEditors: Please set LastEditors * @LastEditTime: 2021-03-23 19:28:10 */ #include <iostream> using namespace std; int main() { cout << "This is a simple problem." << endl; return 0; }
-
/* * @Description: 画正方形 * @version: * @Author: * @Date: 2021-03-23 19:40:26 * @LastEditors: Please set LastEditors * @LastEditTime: 2021-03-23 19:43:44 */ #include <iostream> #include <string> #include <math.h> using namespace std; int main() { int n; char c; cin >> n >> c; string s; s.append(n, c); for (int i = 0; i < round(n / 2.0); i++) { cout << s << endl; } system("pause"); return 0; }
-
/* * @Description: 身份证号校验 * @version: * @Author: * @Date: 2021-03-23 19:44:56 * @LastEditors: Please set LastEditors * @LastEditTime: 2021-03-23 20:03:16 */ #include <iostream> #include <string> #include <unordered_map> using namespace std; bool check(string str) { int sum = 0; unordered_map<int, char> m; m[0] = '1'; m[1] = '0'; m[2] = 'X'; m[3] = '9'; m[4] = '8'; m[5] = '7'; m[6] = '6'; m[7] = '5'; m[8] = '4'; m[9] = '3'; m[10] = '2'; int weight[17] = {7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2}; for (int i = 0; i < 17; i++) sum += (str[i] - '0') * weight[i]; sum %= 11; if (str[17] == m[sum]) return true; return false; } int main() { int n; cin >> n; int count = 0; for (int i = 0; i < n; i++) { string s; cin >> s; if (!check(s)) { cout << s << endl; count++; } } if (!count) cout << "All passed" << endl; system("pause"); return 0; }
团体程序设计天梯赛-练习集——P1-16
最新推荐文章于 2022-04-11 19:54:01 发布