結果
問題 |
No.1469 programing
|
ユーザー |
|
提出日時 | 2023-09-25 03:03:03 |
言語 | C++17 (gcc 13.3.0 + boost 1.87.0) |
結果 |
AC
|
実行時間 | 171 ms / 3,000 ms |
コード長 | 871 bytes |
コンパイル時間 | 1,910 ms |
コンパイル使用メモリ | 197,372 KB |
最終ジャッジ日時 | 2025-02-17 02:18:07 |
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 15 |
コンパイルメッセージ
main.cpp:4:9: warning: #pragma once in main file 4 | #pragma once | ^~~~
ソースコード
#include <bits/stdc++.h> using namespace std; #pragma once #include <string> #include <vector> #include <utility> template<class T> std::vector<std::pair<T, int>> runlength_encoding(const std::vector<T>& v) { std::vector<std::pair<T, int>> ret = {{v[0], 1}}; for(size_t i = 1; i < v.size(); i++) { if(ret.back().first == v[i]) ret.back().second++; else ret.emplace_back(v[i], 1); } return ret; } std::vector<std::pair<char, int>> runlength_encoding(const std::string& s) { std::vector<std::pair<char, int>> ret = {{s[0], 1}}; for(size_t i = 1; i < s.size(); i++) { if(ret.back().first == s[i]) ret.back().second++; else ret.emplace_back(s[i], 1); } return ret; } int main() { string s; cin >> s; auto v = runlength_encoding(s); for(const auto& [c, _] : v) cout << c; cout << endl; }